HarmonyOS鸿蒙Next @ohos.events.emitter

HarmonyOS鸿蒙Next @ohos.events.emitter 多个界面同时订阅一个事情,其中一个界面取消订阅后,其他界面全部都取消了;请问这种场景有什么办法没,多个界面同时订阅登录事件,其中一个界面退出后取消了订阅,发现其他界面的订阅也同时取消了,求个大佬解惑

3 回复

可以用EventHub取消订阅,可以取消指定的callback对指定事件的订阅。

参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V13/js-apis-inner-application-eventhub-V13

更多关于HarmonyOS鸿蒙Next @ohos.events.emitter的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,@ohos.events.emitter 是一个事件发射器模块,用于在应用程序中实现事件的发布与订阅机制。它允许开发者定义和触发自定义事件,并通过监听器对这些事件进行处理。该模块支持同步和异步事件处理,能够有效解耦业务逻辑,提升代码的可维护性和扩展性。@ohos.events.emitter 提供了 onoffemit 等核心方法,分别用于注册事件监听器、移除事件监听器以及触发事件。开发者可以通过该模块实现跨组件、跨页面的通信,简化复杂场景下的数据传递和状态管理。

@ohos.events.emitter 是 HarmonyOS 鸿蒙Next 中的一个事件发射器模块,用于实现事件的分发和监听。通过该模块,开发者可以轻松地在应用中实现组件间的事件通信。

主要功能包括:

  1. 事件注册与注销:通过 on 方法注册事件监听器,off 方法注销监听器。
  2. 事件触发:使用 emit 方法触发事件,并传递相关数据。
  3. 一次性事件:通过 once 方法注册一次性事件监听器,触发后自动注销。

该模块适用于解耦组件逻辑,提升代码可维护性。更多详情可参考官方文档。

回到顶部