在 2 个不同堆栈中的屏幕之间导航

Navigation between screens in 2 different Stacks

我有 2 个堆栈,RootNavigator 和 AuthNavigator。在<NavigationContainer>.

里面
<NavigationContainer>
  {token ? <RootNavigator /> : <AuthNavigator />}
</NavigationContainer>

RootNavigator.js returns:

return (
  <Stack.Navigator>
    <Stack.Screen name="Members">
  </Stack.Navigator>
)

AuthNavigator returns:

return (
  <Stack.Navigator screenOptions={{ headerShown: false }}>
    <Stack.Screen name="Login" component={Login} />
  </Stack.Navigator>
);

我的问题是如何从登录屏幕转到会员屏幕?

我试过这个: navigation.navigate('Members');navigation.navigate('RootNavigator', {screens: 'Members'});

版本:

"@react-navigation/drawer": "^6.1.8",
"@react-navigation/native": "^6.0.6",
"@react-navigation/stack": "^6.0.11",

您需要使用 redux 或任何其他类型的状态管理来更改令牌值。例如,只要将令牌更改为 TRUE,导航容器就会有 rootNavigator 而不是 authNavigator,并且屏幕会发生变化。