RN页面间方法调用
场景
在APP写作过程中,有时A界面获取的数据发生改变时,需要改变B界面的状态,而这时则需要在A 界面调用B界面的方法,来改变B界面的状态
在A界面发送消息
1、导入DeviceEventEmitter
import {DeviceEventEmitter} from 'react-native';
2、在A界面发送消息
// 发送场景变化的信息
eviceEventEmitter.emit('sceneChange', { sceneList: result, bright: this.state.mBright });
在B界面监听消息
1、导入DeviceEventEmitter
import {DeviceEventEmitter} from 'react-native';
2、定义处理函数
//处理回调函数
_sceneChange(newScene){
console.log(newScene);
}
3、在componentDidMount
注册监听
componentDidMount(){
this._sceneChangeListener=DeviceEventEmitter.addListener('sceneChange',this._sceneChange);
}
4、在componentWillUnmount
里移除监听
componentWillUnmount() {
this._sceneChangeListener.remove();
}