在A页面onLoad里添加 uni.$on("functionA",this.functionA),全局注册functionA方法
3/9补充:A页面是tabbar页面,才会有这个问题
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10 64位
HBuilderX类型: 正式
HBuilderX版本号: 3.1.4
手机系统: 全部
页面类型: vue
打包方式: 云端
项目创建方式: HBuilderX
在A页面onLoad里添加 uni.$on("functionA",this.functionA),全局注册functionA方法
3/9补充:A页面是tabbar页面,才会有这个问题
在B页面使用uni.$emit("functionA"),functionA触发成功
然后返回,重新进入B页面,再次uni.$emit("functionA") => 触发成功
在B页面使用uni.$emit("functionA"),functionA触发成功
然后返回,重新进入B页面,再次uni.$emit("functionA") => 触发失败
工作的代码,不方便贴
uni.$on()好像变成了uni.$once(),但也不是只触发一次,是第二次进入触发的页面就不能触发
2 个回复
3***@qq.com (作者)
问题已经解决
如果uni.$off没有传入参数,则移除App级别的所有事件监听器;
我在页面B使用了uni.$off()
期望有一个移除某个页面所有注册方法的事件
2***@qq.com - 我叫王乜乜,大家可以叫我王野野,不过我比较喜欢叫王托托,不过我真正叫王大仙!
虽然我没遇到,但是遇事解决留方案的精神值得点赞!