为了账号安全,请及时绑定邮箱和手机立即绑定

反应本机 DeviceEventEmitter 取消订阅事件

反应本机 DeviceEventEmitter 取消订阅事件

慕尼黑5688855 2021-11-12 17:31:28
我正在使用它DeviceEventEmitter来处理在构造函数中订阅的最喜欢的方法的事件:DeviceEventEmitter.addListener("FavoriteClick", async (e) => {    // do something})只要组件卸载(永久),此事件侦听器就会保持活动状态。我必须打电话取消订阅吗?我试着存储事件作为一个变量,并呼吁listener.removeCurrentListener()在componentWillUnmount() 像(有限)文档状态,如果我理解的正确,但removeCurrentListener()不是方法。
查看完整描述

1 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

DeviceEventEmitter已弃用,您应该NativeEventEmitter改用。


示例:


import { NativeEventEmitter, NativeModules } from 'react-native';


const { CalendarManager } = NativeModules;


const calendarManagerEmitter = new NativeEventEmitter(CalendarManager);


const subscription = calendarManagerEmitter.addListener(

  'EventReminder',

  (reminder) => console.log(reminder.name)

);


...


// Don't forget to unsubscribe, typically in componentWillUnmount

subscription.remove();


查看完整回答
反对 回复 2021-11-12
  • 1 回答
  • 0 关注
  • 139 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信