3***@qq.com
3***@qq.com
  • 发布:2020-04-13 20:44
  • 更新:2020-12-14 09:34
  • 阅读:3418

【报Bug】小程序中uni.$emit触发全局事件 uni.$on监听不到事件

分类:uni-app

详细问题描述

uniapp 微信小程序中uni.$emit触发全局事件 uni.$on监听不到事件

(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)

[内容]

uni.$emit('pageJump', {query: {id: item.id}});   
uni.$on('pageJump', data => {  
    console.log('--------')  
    console.log(data);  
});

重现步骤

[步骤]

[结果]

[期望]

[如果语言难以表述清晰,拍一个视频或截图,有图有真相]

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]

[IDE版本号]
2.6.11.20200409
[windows版本号]

[mac版本号]

uni-app运行环境说明

[运行端是h5或app或某个小程序?]

[运行端版本号]

[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]

[编译模式说明:自定义组件模式?纯nvue模式?v3模式?]

App运行环境说明

[Android版本号]

[iOS版本号]

[手机型号]

[模拟器型号]

附件

[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]

联系方式

[QQ]
365537191

2020-04-13 20:44 负责人:无 分享
已邀请:
hahahahahahaah

hahahahahahaah

确实 这个 监听事件不好使,$on根本无法监听,官方什么时候能修复??

4***@qq.com

4***@qq.com

这个好像和组件还有页面的生命周期有关,在页面和组件还没有挂载时你就监听肯定监听不到
这货的生命周期好像是先把子组件加载完了逐级往上走 最后挂主页面,我就遇到这坑,爬了几天才爬上来
监听要是在子页面上加载时emit 在主页面监听 保证监听不到,因为那时主页面还没挂载 $on还没执行
打个比方:好比大清早你拿个喇叭喊人 那时别人还没起床 别人是听得见的

choin

choin

用本地存储同步

该问题目前已经被锁定, 无法添加新回复