这个在项目中比较常见,可以根据不同的需求使用不同的方法实现。
1、如果是使用goback返回刷新,也就是返回上一级页面后刷新页面,这时可以使用回调方法。
例如:从A跳到B再回到A,
A页面定义回调方法,
this.props.navigation.navigate("B", {
id: this.state.id,
refresh: function () {
this.init();
}
});
B页面返回时调用,
<TouchableOpacity onPress={() => {
this.props.navigation.state.params.refresh();
this.props.navigation.goBack();
}}>
<Text>返回</Text>
</TouchableOpacity>
2、如果是从多级页面返回第一个页面,第一个页面在返回后要刷新,那需要使用监听。我当前的项目是自己封装过,就是在第一个页面先设置一个监听,在最后的页面设置监听值改变,最后返回第一个页面时就会刷新了。