位置: IT常识 - 正文

uniapp中的renderjs使用(uniapp中的onload)

编辑:rootadmin
uniapp中的renderjs使用

推荐整理分享uniapp中的renderjs使用(uniapp中的onload),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp中的swiper包裹video滚动不了,uniapp中的uni-file-picker文件列表关闭,uniapp中的条件渲染和列表渲染的语法是什么,uniapp中的global,uniapp中的fab组件中的trigger,uniapp中的onload,uniapp中的fab组件中的trigger,uniapp中的swiper包裹video滚动不了,内容如对您有帮助,希望把文章链接给更多的朋友!

需求是用openlayers在uniapp框架下做一个移动gis类的软件,选择用renderjs实现地图与dom的交互,一开始也是小白,通过百度资料以及一步步测试后掌握了renderjs的使用,以及地图功能的实现。

                      

一、renderjs的作用是什么?

renderjs 主要服务于APP,因为uni-app为vue+js+html进行编写,整个是h5的技术栈。而app上并没有document等基础对象。那么,涉及到这些的前端类库就无法使用,例如html2、canvas、canvas2、image。而要用这些怎么办,这是用就出现了renderjs这种视图层工具来进行渲染。

运行在视图层的js

uniapp中的renderjs使用(uniapp中的onload)

大幅降低逻辑层和视图层的通讯损耗,提供高性能视图交互能力(减少通讯损耗提升性能,例如一些手势或canvas动画的场景)

在视图层操作dom,运行for web的js库(可以操作dom,意味着拥有window、document等这些全局变量,在app-vue的service层没有这些)

二、renderjs怎样使用?

1.原生层数据通过监听传入renderjs层(可以通过调用原生层的方法触发)

2.直接调用renderjs层方法传出数据

三、测试代码(借用网上一段代码,写的很全面)

<template> <view> <view :msg="msg" :change:msg="renderScript.receiveMsg" class="renderjs" id="renderjs-view">{{msg}}</view> <button @click="renderScript.emitData">直接调用renderjs中的emitData的方法</button><button @click="changeMsg" class="app-view">改变msg的值,直接调用renderjs中receiveMsg的值</button><button @click="renderScript.renferMsg">通过renderjs改变msg的值,同时调用renderjs中的emitData的方法</button> </view></template><script> export default { data() { return { msg: '我是service层原来的msg', }; }, methods: { // 触发逻辑层出入renderjs数据改变 changeMsg() { this.msg = "msg值改变了"; }, // 接收renderjs发回的数据 receiveRenderData(val) { console.log('renderjs返回的值-->', val); }, //接收renderjs发回的数据,同时触发:change:msg,调用enderjs中的emitData的方法 serviceClick(e){ this.msg=e } } };</script><script module="renderScript" lang="renderjs"> export default { data() { return { name: '我是renderjs数据' } }, methods: { renferMsg(event, ownerInstance) { // 调用 service层的serviceClick方法,传值console.log(event,ownerInstance) ownerInstance.callMethod('serviceClick', { test: '这是点击renderjs的区域,向service层传递变量' }) }, // 接收逻辑层发送的数据 receiveMsg(newValue, oldValue, ownerVm, vm) { console.log('msg变化了newValue', newValue) console.log('msg变化了oldValue', oldValue) console.log('msg变化了ownerVm', ownerVm) console.log('msg变化了vm', vm) }, // 发送数据到逻辑层 emitData(e, ownerVm) { ownerVm.callMethod('receiveRenderData', this.name) } } };</script>

注意:1.在renderjs层不能使用uni或其他框架的API,例如uni.request、uni.getlocation等等方法,需在原生层调用后触发监听将数据传入。

2.在APP端renderjs层的data与原生层的data互不相干

3.this.$ownerInstance.callMethod方法必须通过点击事件执行

4.地图方法都要写在renderjs层中,不能使用子组件

本文链接地址:https://www.jiuchutong.com/zhishi/277833.html 转载请保留说明!

上一篇:Win11升级反馈:可使用Win7兼容性模式运行升级助手绕过系统兼容性测试(win10升级win11报错)

下一篇:Mac系统中如何给PDF文件加密(mac 怎么操作)

  • 取得的证券投资业绩
  • 超过小规模纳税人
  • 使用权资产和租赁负债的计税基础
  • 计提工会经费的科目
  • 应收账款和应付账款的关系
  • 企业外币账户怎么开通
  • 建行分期通
  • 土地增值税什么时候开始征收的
  • 自产自用应税消费品
  • 进口设备贴息政策2019
  • 当月没有认证的发票要勾选吗
  • 增值税税负最终由谁承担
  • 税控盘减免在哪里填报
  • 运输公司购买机票怎么买
  • 六大会计科目的关系
  • boss直聘收费怎么这么贵
  • i7笔记本cpu性能天梯图
  • iphone怎么格式化掉所有内容和设置
  • window10的点在哪里
  • 民办非企业单位是私立还是公立
  • cpuz.exe
  • 暂估入账收入会计分录
  • linux sl
  • 对于接受捐赠的固定资产
  • 2017年新准则下,收入确认的金额应是
  • PHP:curl_getinfo()的用法_cURL函数
  • zmweb.exe是什么进程
  • 无形资产累计摊销借贷方向
  • 已计提的存货跌价准备计入成本吗
  • 税控减免怎么做账
  • php反射的原理
  • 企业利润总额为负
  • 选择器优先级
  • 华为od机试无法测用例
  • novelai本地部署电脑要求
  • modprobe operation not permitted
  • mysql分区实现
  • vscode主题插件护眼
  • phpcms 标签
  • 向境外支付赔偿款是否需要税务备案
  • 弃置费用的现值计入固定资产
  • 网上银行跨行转账手续费
  • 增值税发票遗失可以补开吗
  • 企业所得税是指利润的税吗
  • 幼儿园园服已发给孩子怎么通知家长
  • 股票增值权个人可以买吗
  • 个体工商户公帐转法人私人账户
  • 员工出差坐火车怎么处理
  • 季度末需要结转本年利润吗
  • 票已收到、款未付会计分录
  • 银行理财产品算银行存款吗
  • 投资性房地产收回自用
  • 为什么总成本费用不变
  • 收付实现制和权责发生制区别
  • mysql数据库高可用架构
  • centos7如何安装yum命令
  • 微软官微
  • ubuntu怎么安装程序
  • xp系统如何设置用户密码
  • xp桌面图标设置
  • centos n1
  • 升级win10后c盘满了
  • win10系统如何解除屏保
  • kotlin开发安卓教程
  • Cocos2dx3.2 Crazy Tetris update 定时更新 游戏逻辑处理
  • linux自动清理磁盘空间
  • dos判断变量是否为空
  • python中字符
  • 将光标定位于输入端
  • 安卓开发依赖文件添加在哪
  • shell脚本 su
  • node.js下载安装教程
  • shell脚本实际运用
  • python3.7怎么安装pil
  • 清税申报表怎么填写
  • 社保当月减员当月还可以增加上吗
  • 个人所得税票样
  • 南京税务服务热线
  • 增值税普票十万怎么开
  • 新疆塔城靠近俄罗斯吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设