React-Native 发送和接收事件DeviceEventE

2019-03-29  本文已影响0人  俗人彭jin

写原生的时候,我们经常会用到广播,接口,回调等方法来实现发送和接受通知以及通信的。

那么在RN中,也有一套发送和接收通知的方法,用的组件是DeviceEventEmitter。

下面看一下,RN中是如何发送和接收事件的:

导入DeviceEventEmitter组件:

1 首 先 ,导入DeviceEventEmitter组件:


import {
    View,
    Text,
    Button,
    DeviceEventEmitter
} from 'react-native';

2. 写一个发送消息的方法:


<Button title="发送通知" onPress={() => {
    DeviceEventEmitter.emit('left', '发送了个通知');
}}/>

3. 写一个接收这个消息的方法:

在你想要接收到这个消息的组件内写如下方法,别忘了要导入DeviceEventEmitter:

在didmount方法中写好监听/接收方法,当有消息发送时,这就会接收到,并执行相应方法


componentDidMount() {
    this.deEmitter = DeviceEventEmitter.addListener('left', (a) => {
        alert('收到通知:' + a);
    });
}
(a) 这个a 就是那边发送的消息,可以是对象,我在这里发了个字符串过来。

当然,别忘了要卸载:


componentWillUnmount() {
    this.deEmitter.remove();
}
上一篇下一篇

猜你喜欢

热点阅读