请问tab之间的切换时不刷新页面的吗?如果2个tabbar 里面的 list数据是对应的,比如 一个是 货物list, 一个是 上架货物的list , 在一个list里面点击了某件货物上架, 那应该在 上架货物list里面多一件,但发现tab之间的切换不会刷新重读页面, tab之间也没法用 callback 完成数据刷新, 请问如何解决?
请问tab之间的切换时不刷新页面的吗?如果2个tabbar 里面的 list数据是对应的,比如 一个是 货物list, 一个是 上架货物的list , 在一个list里面点击了某件货物上架, 那应该在 上架货物list里面多一件,但发现tab之间的切换不会刷新重读页面, tab之间也没法用 callback 完成数据刷新, 请问如何解决?
最近刚好也在学习react native,尝试做一个to do list 练手。
3个tabbar分别是“所有”、“已完成”、“未完成”,当点击任意页面的一件to do事项,将“未完成”标为“已完成”,所有页面都同时修改,这个场景和你描述的有点类似。
我把更新数据的事件放到componentWillReceiveProps。
componentWillReceiveProps() 在已装载组件接收新 props 之前被调用。 如果您需要更新 state 以响应props 的更改(例如,重置它),则可以在此方法中比较this.props 和 nextProps 并使用 this.setState() 执行状态转换。
componentDidMount() {
this._getTodolistData();
}
componentWillReceiveProps(){
this._getTodolistData();
}
_getTodolistData(){
let _this = this;
AsyncStorage.getItem('todolistData', (err, result) => {
if(err){
return;
}
let todoListArr = (result != null) ? JSON.parse(result) :'';
let todoListFilter= this.filterArr(todoListArr);
_this.setState({
todolistData: todoListFilter[true]
})
// Alert.alert("getItem success")
})
}
3 回答1.9k 阅读✓ 已解决
1 回答1.6k 阅读✓ 已解决
4 回答1.6k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
https://github.com/smallpath/...
先切换,再改全局状态.