1# 取消动态订阅公共事件 2 3 4## 场景介绍 5 6动态订阅者完成业务需要时,需要主动取消订阅,订阅者通过调用[unsubscribe()](../../reference/apis-basic-services-kit/js-apis-commonEventManager.md#commoneventmanagerunsubscribe)方法取消订阅事件。 7 8 9## 接口说明 10 11| 接口名 | 接口描述 | 12| -------- | -------- | 13| unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback) | 取消订阅公共事件 | 14 15 16## 开发步骤 17 181. 导入模块。 19 20 ```ts 21 import Base from '@ohos.base'; 22 import commonEventManager from '@ohos.commonEventManager'; 23 import promptAction from '@ohos.promptAction'; 24 25 const TAG: string = 'ProcessModel'; 26 ``` 27 282. 根据[动态订阅公共事件](common-event-subscription.md)章节的步骤来订阅某个事件。 29 303. 调用CommonEvent中的unsubscribe()方法取消订阅某事件。 31 32 ```ts 33 // subscriber为订阅事件时创建的订阅者对象 34 if (this.subscriber !== null) { 35 commonEventManager.unsubscribe(this.subscriber, (err: Base.BusinessError) => { 36 if (err) { 37 console.error(TAG, `UnsubscribeCallBack err = ${JSON.stringify(err)}`); 38 } else { 39 promptAction.showToast({ 40 message: $r('app.string.unsubscribe_success_toast') 41 }); 42 console.info(TAG, `Unsubscribe success`); 43 this.subscriber = null; 44 } 45 }) 46 } else { 47 promptAction.showToast({ 48 message: $r('app.string.unsubscribe_failed_toast') 49 }); 50 } 51 ``` 52