使用uni.$emit()发送参数到了nvue页面可以接受但是无法赋值给当前页面的data。在ios手机无法复现,安卓首次可行,第二次开始无法设置参数值。
- 发布:2020-09-02 20:53
- 更新:2022-09-24 12:58
- 阅读:3106
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 10.13.6
HBuilderX类型: 正式
HBuilderX版本号: 2.8.8
手机系统: Android
手机系统版本号: Android 10
手机厂商: 小米
手机机型: 红米Note8Pro
页面类型: nvue
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
能够赋值
能够赋值
实际结果:
第二次无法赋值
第二次无法赋值
bug描述:
使用uni.$emit()发送参数到了nvue页面可以接受但是无法赋值给当前页面的data。在ios手机无法复现,安卓首次可行,第二次开始无法设置参数值。
2***@qq.com - 无
您好帖主,我在刚刚也发生了类似问题,是在Subnvue(导航栏)中发生的通讯问题,我给您提供一个方法,希望您能够解决此问题,发送的$emit函数延迟50毫秒即可解决此问题
小少年报
我感觉要么你的 this 指向有问题(可能放在了函数的作用域中,this指向的不是当前Vue实例,而是当前的函数),要么如果你的参数是对象的话,最好深拷贝一下,在试一下,我是封装了一个方法,在4~5个页面中调用互相传递参数都没有问题, 这是我接受数据的代码:
uni.$on("change_popupWindow", data => {this.imgData = JSON.parse(JSON.stringify(data));})
2020-09-07 10:22
bxw (作者)
是的就是这样,但是首次赋值没问题。
2020-09-11 09:09
a***@gmail.com
大哥, 问题解决了吗? 我靠, 搞死我了
2020-12-20 17:18