取消动态订阅公共事件
场景介绍
动态订阅者完成业务需要时,需要主动取消订阅,订阅者通过调用 unsubscribe()
方法取消订阅事件。
接口说明
- 取消订阅公共事件
bash
unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback)
开发步骤
导入模块
js
import { BusinessError, commonEventManager } from "@kit.BasicServicesKit";
import { hilog } from "@kit.PerformanceAnalysisKit";
const TAG: string = "ProcessModel";
const DOMAIN_NUMBER: number = 0xff00;
根据动态订阅公共事件章节的步骤来订阅某个事件。
调用 CommonEvent 中的 unsubscribe()方法取消订阅某事件。
js
// subscriber为订阅事件时创建的订阅者对象
if (this.subscriber !== null) {
commonEventManager.unsubscribe(this.subscriber, (err: BusinessError) => {
if (err) {
hilog.error(
DOMAIN_NUMBER,
TAG,
`UnsubscribeCallBack err = ${JSON.stringify(err)}`
);
} else {
hilog.info(DOMAIN_NUMBER, TAG, `Unsubscribe success`);
this.subscriber = null;
}
});
}