抽屉导航器屏幕奇怪的行为
Drawer navigator screens strange behavior
我在我的 expo 管理的工作流项目中使用了 react-navigation v5,我注意到的是,我每次访问附加到抽屉导航器的屏幕时,都不会调用生命周期方法。 .
示例如下:
- DrawerNavigator
- Screen1
- Screen2
我第一次访问“Screen1”useEffect 钩子被调用,我的所有数据都被提取。 一旦我从它导航(导航到“Screen2”)并返回到“Screen1”,什么也没有发生(没有再次获取数据)...有什么我丢失是因为我希望在每次访问“屏幕*”时重新启动(再次获取)我的数据?
谢谢!
您必须使用 'useFocusEffect',每次加载屏幕时都会 运行。
您可以在此处找到参考资料
https://reactnavigation.org/docs/use-focus-effect/
useEffect 不是这样工作的,所以当您返回到已经安装并在堆栈中的屏幕 1 时,效果不会 运行。
我在我的 expo 管理的工作流项目中使用了 react-navigation v5,我注意到的是,我每次访问附加到抽屉导航器的屏幕时,都不会调用生命周期方法。 .
示例如下:
- DrawerNavigator
- Screen1
- Screen2
我第一次访问“Screen1”useEffect 钩子被调用,我的所有数据都被提取。 一旦我从它导航(导航到“Screen2”)并返回到“Screen1”,什么也没有发生(没有再次获取数据)...有什么我丢失是因为我希望在每次访问“屏幕*”时重新启动(再次获取)我的数据?
谢谢!
您必须使用 'useFocusEffect',每次加载屏幕时都会 运行。
您可以在此处找到参考资料 https://reactnavigation.org/docs/use-focus-effect/
useEffect 不是这样工作的,所以当您返回到已经安装并在堆栈中的屏幕 1 时,效果不会 运行。