更改屏幕执行时我需要一个函数,我的意思是当从屏幕主页导航到执行回调函数的关于屏幕时。
设想
我想在更改任何导航运行回调函数以进行某些检查时创建全局堆栈,例如(用户令牌、互联网状态、检查位置是一个或关闭等)
尝试这个
我为Stack-navigation和implemnet创建了一个类组件UNSAFE_componentWillUpdate
,可以检测到任何导航。
代码
UNSAFE_componentWillUpdate(prevProp, prevState) {
if (prevProp != this.props) {
console.log('change state navigation');
}
}
就这样误会
- 无法检测到第一个屏幕
index-zero
主屏幕。 - 我必须为每个堆栈编写此代码。
我的堆栈
<Stack.Navigator>
<Stack.Screen
name="Home"
component={Home}
/>
<Stack.Screen
name="About"
component={About}
/>
</Stack.Navigator>