如何删除firebase.notifications()。onNotificationOpened侦听器?

时间:2018-08-30 06:57:31

标签: reactjs firebase react-native firebase-cloud-messaging react-native-firebase

我正在研究React本机项目,并使用react-native-firebase库。设置监听器可以正常工作,但是我找不到删除监听器的方法。

我正在主页上设置此侦听器,以便每当用户访问主页时。侦听器得到多次注册,并因此获得了多次操作。

我想销毁该侦听器,然后再次启动一个新侦听器。

firebase.notifications().onNotificationOpened((notificationOpen) => {
        if (notificationOpen) {
          const notification: Notification = notificationOpen.notification;
          if(notification.data.type){
          }
        }
      });

如果有人可以提供帮助,将不胜感激...

1 个答案:

答案 0 :(得分:1)

您需要再次呼叫监听器 ,以便按照docs中的说明将其删除。

componentDidMount() {
    this.notificationOpenedListener = firebase.notifications().onNotificationOpened((notificationOpen) => {
          //... Your Stuff
   }
}

componentWillUnmount() {
    this.notificationOpenedListener();
}