从其他屏幕更新状态值

时间:2020-07-15 17:32:03

标签: react-native navigation state

ReactNative的新手。 如果做某件事不当,请通知我。

在屏幕A上,我有一个间隔来处理REST请求并更新我的屏幕A状态及其组件。 到目前为止工作正常!

导航到屏幕B this.props.navigation.navigate('ScreenB', {state: this.state}); 并且我正在使用该状态值来安装ScreenB组件。

即使在ScreenB显示的情况下,ScreenA间隔在某些时候也会用新数据更新我的ScreenA状态。 将这些新数据传递到ScreenB状态并更新其组件的正确方法是什么?

我认为在导航道具上传递状态会在所有屏幕上保留相同的对象(状态),但这显然是错误的。

1 个答案:

答案 0 :(得分:0)

最好的方法是添加一个通用的状态管理库(例如redux)并在屏幕上使用它。一旦在一个屏幕中更新了数据,就可以调度一个操作来更新商店。现在显示的page2将使用更改并重新呈现新数据更改。