React-Native-Navigator导航条-反向传值(三)

正向传值搞定了,免不了要方向传值,这里我采用的是类似iOS通知的方法
思路:第二个页面点击按钮,发送通知,然后第一个页面接受通知,处理事件,so......

RN里面需要用到一个DeviceEventEmitter,监听,相当也iOS的通知

需要导入

import {
    AppRegistry,
    View,
    Text,
    StyleSheet,
    Navigator,
    TouchableOpacity,
    DeviceEventEmitter,//监听

}from 'react-native';

在需要的地方(第二个页面)

buttonAction() {

        DeviceEventEmitter.emit('changeData','回传参数');

    }

其他地方(第一个页面)

//在这个方法里面注册监听
//changeData  就是监听的名字,类似通知的名字
//value就是上面对应的“回传参数”,就是其他地方传过来的值
//两个参数,一个是监听名字,一个是方法(收到监听处理方法)
componentDidMount() {
        this.subscription = DeviceEventEmitter.addListener('changeData', (value) =>{
            this.setState({
                paramData:value,
            });
            console.log('传过来的值是:'+value);
        });
    }
//页面移除时移除监听
//类似iOS  dealloc里面移除通知
    componentWillUnmount() {
        this.subscription.remove();
    }

这样就可以反向传值了(其实是全局传值......)

navgif.gif

项目地址:https://github.com/chjwrr/RN-NatigatorTest

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容