Reactjs 在componentDidmount之前调用ComponentWillUnmount
我有一个名为PAGE2的组件,我将从中返回到组件PAGE1。现在,当我使用不同的道具从PAGE1移动到PAGE2时,我看到PAGE2带有旧值(这里不调用包含fetchListValues函数的componentDidMount) 我从第2页到第1页使用 导航。导航(“第1页”)Reactjs 在componentDidmount之前调用ComponentWillUnmount,reactjs,react-native,Reactjs,React Native,我有一个名为PAGE2的组件,我将从中返回到组件PAGE1。现在,当我使用不同的道具从PAGE1移动到PAGE2时,我看到PAGE2带有旧值(这里不调用包含fetchListValues函数的componentDidMount) 我从第2页到第1页使用 导航。导航(“第1页”) 导航未卸载PAGE2,因此未调用相关函数。请提供您的代码的详细信息-如果他们看不到您所写的内容,没有人可以提供帮助。我尝试将其转到第0页,这就是为什么我使用NavigateBack()转到堆栈中的上一个路由。我认为你应该
导航未卸载PAGE2,因此未调用相关函数。请提供您的代码的详细信息-如果他们看不到您所写的内容,没有人可以提供帮助。我尝试将其转到第0页,这就是为什么我使用NavigateBack()转到堆栈中的上一个路由。我认为你应该检查你的屏幕和导航。我想声明componentDidMount并不是每次屏幕更改都调用的。当我第一次使用它时,我也在期待它。您应该注意聚焦和模糊导航事件。
componentDidMount = () => {
// in page 2
this.fetchChats();
this.backHandler = BackHandler.addEventListener(
"hardwareBackPress",
this.handleBackPress
);
};
handleBackPress() {
console.log('Back pressing', this.props.navigation);
this.props.navigation.navigate('PAGE1');
return true;
}
componentWillUnmount() {
console.log('Hitting component will unmount');
BackHandler.removeEventListener("hardwareBackPress",
this.handleBackPress);
}
this.props.navigation.navigate('PAGE1');
//instead of this use the one below
this.props.navigation.goBack();