为什么 React 原生导航会同时加载所有组件?

Ade*_*yın 1 react-native wix-react-native-navigation

我正在使用 wix 的 react native navigation v2。我有一个带有登录屏幕和注册的欢迎屏幕。我从App.js. 有登录和注册两个选项卡。

欢迎屏幕

但是一旦应用程序启动,componentWillMount 方法就会在注册屏幕中运行,但我仍处于登录选项卡。

欢迎标签

为什么会这样?

Aay*_*apa 5

react-native-navigation的 Tab 不支持延迟加载。但是有两个特殊的生命周期函数,您可以在其中放置组件在屏幕上出现或消失时的逻辑

  • componentDidAppear(): 每次此组件出现在屏幕上时调用
  • componentDidDisappear(): 每次此组件从屏幕上消失时调用

https://wix.github.io/react-native-navigation/docs/screen-lifecycle

还有一个关于话题的讨论https://github.com/wix/react-native-navigation/issues/1250