如何在导航到选项卡导航器的初始路径时执行功能?

时间:2017-12-23 11:36:57

标签: react-native react-navigation tabnavigator

我有一个带有3条路线的标签导航器......中间的初始路线有一个在安装时执行的功能......每次用户前往该初始时都会执行此功能的目的通过滑动,点击导航栏或点击Android上的后退按钮进行路由。那么是否有一个生命周期方法被执行,我可以在这种情况下放置我的函数?或者有办法操纵导航选项吗?

感谢。

1 个答案:

答案 0 :(得分:0)

基本上,您希望跟踪当前处于活动状态的屏幕并执行您的功能。它可以使用onNavigationStateChange

export default () => (
  <AppNavigator
    onNavigationStateChange={(prevState, currentState) => {
      const currentScreen = getCurrentRouteName(currentState);
      const prevScreen = getCurrentRouteName(prevState);

      if (currentScreen == initialScreen) {
        // Execute the function here
      }
    }}
  />
);

阅读文档:onNavigationStateChange