HarmonyOS emitter关闭问题

有多级页面,分别监听了emitter,最里面的页面按照文档aboutToDisappear时调用了emitter.off(),但是最外层的emitter也被关闭了,接收不到信息了。如何处理?

HarmonyOS
2024-12-20 16:17:22
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

可以使用传入callback形式取消订阅,需要注意:on中增加的callback和off中的callback需要是同一个,否则会把所有的订阅都取消。参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-emitter-V5#emitteroff10

是必须要取消,如果不取消会有内存泄漏的风险,JS层的对象可能释放不了,下次页业务再走订阅流程,可能又会有一个对象订阅相同eventid,回调时出现多个回调调用,所以业务不订阅了,需要主动off取消订阅。

分享
微博
QQ
微信
回复
2024-12-20 19:54:42
相关问题
HarmonyOS 事件订阅 emitter问题
1045浏览 • 1回复 待解决
HarmonyOS emitter 线程切换问题
872浏览 • 1回复 待解决
HarmonyOS emitter的性能问题
402浏览 • 1回复 待解决
HarmonyOS emitter传输数据问题
522浏览 • 1回复 待解决
HarmonyOS emitter事件处理问题
681浏览 • 1回复 待解决
HarmonyOS emitter相关
346浏览 • 1回复 待解决
HarmonyOS 页面关闭问题
224浏览 • 1回复 待解决
HarmonyOS 键盘关闭问题
165浏览 • 1回复 待解决
HarmonyOS emitter注销方式
557浏览 • 1回复 待解决
HarmonyOS 页面栈关闭问题
599浏览 • 1回复 待解决
HarmonyOS emitter.on相关咨询
415浏览 • 1回复 待解决
HarmonyOS 关于emitter.EventData
551浏览 • 1回复 待解决
HarmonyOS 代码段关闭当前应用问题
246浏览 • 1回复 待解决
HarmonyOS 自定义弹窗关闭问题
444浏览 • 1回复 待解决
ets开发关闭窗口组件问题
3780浏览 • 1回复 待解决
HarmonyOS 二级页面左滑关闭问题
693浏览 • 1回复 待解决
关于emitter、eventHub的使用场景
3441浏览 • 1回复 待解决
通过emitter实现worker间线程通讯
1461浏览 • 1回复 待解决
Emitter如何声明回调函数类型
1978浏览 • 1回复 待解决