如何在运行navigator.pop()后刷新React状态?

在使用React Native时,我有几个组件相互重叠,其中一些组件会改变组件的状态,如下所示:

社交 - >群组 - >添加群组

但是,当我运行navigator.pop()返回到以前的组件(例如,在向用户的帐户添加组之后),下面的组件(本例中为“组”)将不会刷新州。

我在这里做错了什么?


事实证明,我可以通过在'组' componentWillUpdate上插入一个componentWillUpdate来解决这个问题,也就是说,只要Groups组件更新,它就会触发一个loadGroupsData函数:

componentWillUpdate() {
  this.loadGroupsData();
}

... loadGroupsData函数检查其中是否存在差异,如果有,则加载:

loadGroupsData() {
api.getUserGroups(this.state.userId, (data) => {
  data.forEach((group, index) => {
    group.groupname = group.groupname;
  });
  if (this.state.dataSource._cachedRowCount === undefined || this.state.dataSource._cachedRowCount !== data.length) {
    this.setState({
      usersGroups: data.map(data => data.groupname),
      dataSource: this.state.dataSource.cloneWithRows(data),
      loaded: true,
    });
  }
});} 
链接地址: http://www.djcxy.com/p/32495.html

上一篇: How do I refresh React state after running navigator.pop()?

下一篇: directory index of "..." is forbidden