renderjs的使用

在uniapp中使用了某些前端库或iframe,需要操作这些库中的dom的时候, 而uni上又没有document等基础对象。也就无法操作这些dom去实现一些交互逻辑,那么,涉及到这些的前端类库就无法使用,例如html2、canvas、image。而要用这些怎么办,这是用就出现了renderjs这种视图层工具来进行渲染。大幅降低逻辑层和视图层的通讯损耗,提供高性能视图交互能力

使用方法:

1. 在原有script下方再添加script,其中lang="renderjs"固定, module=“demo”,module的名字任意起

2. 可以通过 this.$ownerInstance 获取当前组件的 ComponentDescriptor 实例。类似于vm

3. 视图层绑定事件通过 module名称 . 逻辑层定义方法,有两个参数,1.事件对象event,2. 当前组件实例ComponentDescriptor

4. 两个script间的通信需要通过:this.$ownerInstance 全局组件实例 或者 事件参数ComponentDescriptor 身上的callMethod方法,去抛出方法、传值,类似于vue组件间emit

5. 可以使用 vue 组件的生命周期不可以使用 App、Page 的生命周期

 视图层使用

renderjs的使用_第1张图片

逻辑层事件

renderjs的使用_第2张图片 

 renderjs&script ——> script

renderjs的使用_第3张图片

 普通script

renderjs的使用_第4张图片

演示代码








你可能感兴趣的:(JavaScript,前端,javascript,js)