react native goback() 怎么刷新页面并且更新页面数据

问个基础问题,有home,list,update,三个页面, home到list ,list里面某条记录点击到update页面,完成update操作之后回到list页面, 我的问题是,update回到 list页面是用goback()吗?
还是 navigate('list') ? 如果用 navigate('list');的话list 页面 的返回按钮就会回到 update页面,
如果用goback(),那怎么刷新就list页面并且更新list页面的数据?

阅读 12k
4 个回答

list->update时先传递一个callback函数作为参数
update在goback前 调用callback方法
在callback里面刷新list页面。

新手上路,请多包涵

有demo么?可以借我看下demo么?

新手上路,请多包涵

第一种
是通过EventEmitter实现事件机制,实现简单的观察者模式,类似于IOS中的Notification。发送端发送通知,接收端接受到通知后,通过状态机来改变渲染。发送端和接受端同时需要引入DeviceEventEmitter组件。
第二种
通过Navtigator的push方式,传递方法,第二个页面实例化方法传值,第一个页面实现方法,通过状态机渲染到页面。
第三种
通过CallBack修改父组件状态值

新手上路,请多包涵

const didFocusSubscription = this.props.navigation.addListener(

        'didFocus',
        payload => {
            console.log('didFocus', payload);
        }
    );
    
   如果使用navigation。 可以在需要更新的页面加入这个方法
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题