当屏幕弹出StackNavigator时,React Native:触发事件

时间:2019-05-06 19:35:56

标签: javascript reactjs react-native redux react-native-navigation

我的React Native应用程序中有一个StackNavigator,其中包含两个屏幕,Screen1Screen2Screen1包含项目列表,当您单击其中一项时,StackNavigator将Screen2推入堆栈,显示有关在Screen1上单击的项目的信息。在Screen2上,您可以单击按钮以从Screen1的列表中删除项目(列表保存在Redux存储中)。如果我刷新应用程序并导航到Screen1,则删除的项目不见了,但是我要做的是让Screen1检查Redux存储并在弹出Screen2时刷新列表。堆栈。我不认为我可以使用componentDidMountcomponentDidUpdate,因为当在StackNavigator中简单地导航到屏幕时,这两个都不会触发。

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果Redux将更新,则可以尝试componentWillRecieveProps方法。 例如:


// screen1
state ={ 
  list = [1,2,3]
};

componentWillRecieveProps(nextProps){
     this.setState({list: nextProps.list})
}