Sme*_*mee 7 javascript ios reactjs react-native
使用React Native时,我有一些组件被推到彼此之上,其中一些组件会改变它们下面组件的状态,如下所示:
社交 - >群组 - >添加群组
但是,当我跑navigator.pop()回到前一个组件时(例如,在将一个组添加到用户的帐户之后),下面的组件(在这种情况下,"组")将不会刷新最新状态.
我在这做错了什么?
事实证明,我能够通过componentWillUpdate在“Groups”组件上插入来解决这个问题,也就是说,每当 Groups 组件更新时,它都会触发 loadGroupsData 函数:
componentWillUpdate() {
this.loadGroupsData();
}
Run Code Online (Sandbox Code Playgroud)
...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,
});
}
});}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3694 次 |
| 最近记录: |