链接两个不同的堆栈导航器

Linking two different stack navigators

我正在尝试 link 在两个不同的堆栈导航器之间,并从第二个堆栈返回到第一个堆栈的初始状态。让我知道是否有可行的方法。

用这么少的信息很难回答这个问题,但如果您只是想寻找一种重置为根目录的方法,这应该可行。

navigation.dispatch(
  StackActions.reset({
    index: 0,
    key: null,
    actions: [
      NavigationActions.navigate({
        routeName: routes.ROOT,
      }),
    ],
  })
);

routes.ROOT 替换为您的根路由。

我想通了。所以我的路线是 stack navigator -> tab navigator -> stack navigator。当我试图从第三个导航器返回到第一个堆栈导航器时,我尝试传递屏幕道具,认为它会转到第一个堆栈导航器,但最终转到选项卡导航器。

我所要做的就是将 this.props.navigation 作为选项卡导航器中的屏幕道具传递。