ReactNative 返回上一页发通知监听更新数据

由于刚接触RN,目前在做的RN项目里我没有尝试着用诸如redux、flux来动态管理。可能是我觉得项目不是很复杂没必要去用它们(最主要是我懒得去看它们把它们应用到项目里,等到实在需要用的时候...)
今天遇到一个问题就是点击back按钮返回到上一页的时候要刷新某条数据,因为在此页修改了某个变量要在上一页展现出来。搜索了一下发现打多少人建议用redux,但我还是执着,辗转找到可以通过发送通知,故记录一下。
首先需要在页面注入DeviceEventEmitter,话不多说上代码,

// 这是 firstPage 接受通知刷新数据的页面
componentDidMount() {
        DeviceEventEmitter.addListener('ChangeData', (data) => { // 建立一个通知
                this.setState({
                    name: data.name
                });
        });
    }

// 这是 secondPage 页面将要离开的是时候发送通知
componentWillUnmount() {
        DeviceEventEmitter.emit('ChangeData', {
            email: this.state.email
        });
    }

我觉得发通知就是用来传递参数吧,当然也可以触发一些方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,846评论 25 708
  • Redux是受到了Facebook Flux和Elm启发的应用构架。Redux使用了类似于Flux的单向数据流,但...
    心至靜行至遠阅读 3,163评论 1 21
  • 本文开始分析f8app核心js部分的源码,这篇文章将非常难理解,原因了Redux框架引入了很多新概念,使用了大量函...
    offbye西涛阅读 4,818评论 2 27
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,837评论 18 139
  • 尊敬的出资人: 一、感谢 感谢您的信任,提供资金,让我运作。更感谢您的帮助,在我账户运作陷入困境之际,给与莫大的宽...
    luozi阅读 268评论 0 0