uni-app使用renderjs实现Ecahts和自定义地图
-
renderjs是一个运行在视图层的js。它比WXS更加强大。它只支持app-vue和h5。
-
renderjs的主要作用有2个:
- 大幅降低逻辑层和视图层的通讯损耗,提供高性能视图交互能力
- 在视图层操作dom,运行for web的js库
- 基础演示
<!-- 注意,renderjs 的事件需要绑定在uniapp原生组件上才能触发,除非第三方的进行了适配,否则将可能不受支持 -->
<view :mapData="mapData" :change:mapData="amap.update" ></view>
<!-- 这段代码的意思是绑定一个名为mapData的数据,当mapData发生变化时,renderjs module="amap"的方法update会触发并传输数据-->
<!-- uni-app脚本 -->
<script>
export default {
data() {
return {
mapData: {}
}
}
},
methods: {
dataTransfer(data){
console.log(data)
}
}
</script>
<!-- renderjs脚本 -->
<script module="amap" lang="renderjs">
export default {
data() {
return {
ownerInstance: null, //service 层对象
}
}
},
methods: {
update(newValue, oldValue, ownerInstance, instance) {
// 监听 service 层数据变更,当mapData发生改变,此方法会触发,同时可以得到instance对象,使用instance.callMethod('method',{data})可以调用uni-app层的方法并发送数据
this.ownerInstance = ownerInstance
this.ownerInstance.callMethod('dataTransfer',{'获取到数据'})
}
}
}
}
</script>
利用renderjs几乎可以实现任何前端功能
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
最上级!
喜欢就支持一下吧