我有两个堆栈,RootNavigator和AuthNavigator。在<NavigationContainer>
内部。
<NavigationContainer>
{token ? <RootNavigator /> : <AuthNavigator />}
</NavigationContainer>
RootNavigator.js
返回:
return (
<Stack.Navigator>
<Stack.Screen name="Members">
</Stack.Navigator>
)
AuthNavigator
返回:
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,并且屏幕将发生更改。