uni-app 最新版本的HBuilderX编译后 view、image等的dataset值无法修改 只在最近的几个版本出现 之前版本无问题
uni-app 最新版本的HBuilderX编译后 view、image等的dataset值无法修改 只在最近的几个版本出现 之前版本无问题
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
Mac | 10.15.7 | HBuilderX |
操作步骤:
VUE页面中js混合使用普通 script + renderjs的方式, 编辑器更新到最新几个版本的hbuilder X之后, 原来正常运行的代码不生效了。 类似如下的代码,给html元素如view 或者 image 附加属性并修改: 例如
menu_nodes.dataset.nodeid = nodeid;
menu_nodes.dataset.xx = oldX;
menu_nodesdataset.yy = oldY;
相应的 nodeid xx yy 都不能修改了。
<image data-nodeid="0" @tap="delNode" src="../../static/index/topo/menu/node_delete.png" class="menu_nodes menu_icon-5" />
请官方人员帮忙查看一下,问题的原因。 谢谢!
预期结果:
对view 、image等的dataset 修改能正常
实际结果:
结果不正常
bug描述:
VUE页面中js混合使用普通 script + renderjs的方式, 编辑器更新到最新几个版本的hbuilder X之后, 原来正常运行的代码不生效了。 类似如下的代码,给html元素如view 或者 image 附加属性并修改: 例如
menu_nodes.dataset.nodeid = nodeid;
menu_nodes.dataset.xx = oldX;
menu_nodesdataset.yy = oldY;
相应的 nodeid xx yy 都不能修改了。
<image data-nodeid="0" @tap="delNode" src="../../static/index/topo/menu/node_delete.png" class="menu_nodes menu_icon-5" />
请官方人员帮忙查看一下,问题的原因。 谢谢!
更多关于uni-app 最新版本的HBuilderX编译后 view、image等的dataset值无法修改 只在最近的几个版本出现 之前版本无问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
menu_nodes没看出是啥
示例能否完善一下
更多关于uni-app 最新版本的HBuilderX编译后 view、image等的dataset值无法修改 只在最近的几个版本出现 之前版本无问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更新新版本之后就好了
这是一个已知的兼容性问题。在最新版本的HBuilderX中,由于底层引擎升级,dataset属性的动态修改在renderjs和普通script混合使用时可能出现异常。
目前建议的解决方案:
- 使用Vue的数据驱动方式替代直接操作dataset
// 在data中定义数据
data() {
return {
nodeData: {
nodeid: '0',
xx: '',
yy: ''
}
}
}
// 通过方法更新数据
updateNodeData(nodeid, x, y) {
this.nodeData.nodeid = nodeid
this.nodeData.xx = x
this.nodeData.yy = y
}
- 在模板中通过属性绑定
<image :data-nodeid="nodeData.nodeid" :data-xx="nodeData.xx" :data-yy="nodeData.yy" [@tap](/user/tap)="delNode" src="../../static/index/topo/menu/node_delete.png" class="menu_nodes menu_icon-5" />