RN 监听 DeviceEventEmitter

2019-08-16  本文已影响0人  知命者夏洛特

解决的问题:
比如在B页面发送了消息,A页面想及时刷新页面数据,就要用到

在页面A中注册

 import  {
  DeviceEventEmitter
  } from 'react-native';

  //注册这个监听事件
  componentDidMount(){
      this.monitorData = DeviceEventEmitter.addListener('xxxName’, (e)=>{});
  };

 //在组件销毁的时候要将其移除
 componentWillUnmount(){
     this.monitorData && this.monitorData.remove();
 };

在页面B中进行调用

import  {
 DeviceEventEmitter
 } from 'react-native';

 //调用事件通知  param是指传递的相应参数
 DeviceEventEmitter.emit('xxxName’,param);

注意:
1、 每一个监听名称都要唯一 this.monitorData,并且是整个项目唯一,不是某一个组件唯一
2、一定要在组件销毁的时候移除

上一篇下一篇

猜你喜欢

热点阅读