React Native 多个 "Root" 视图?

React Native multiple "Root" Views?

构建我的第一个 React Native 应用程序。

目前我正在使用这种浏览不同视图的方式。

<NavigationContainer>
            <Stack.Navigator>
                <Stack.Screen name={"Start"} component={Welcome}/>
                <Stack.Screen name={"LoginMethod"} component={LoginMethod}/>
                <Stack.Screen name={"SocialSecurityNumber"} component={SocialSecurityNumber}/>
                <Stack.Screen name={"NorBankId"} component={NorBankId}/>
                <Stack.Screen name={"NorBankIdMobile"} component={NorBankIdMobile}/>
                <Stack.Screen name={"NorBankIdMobileUsername"} component={NorBankIdMobileUsername}/>
                <Stack.Screen name={"NorBankIdMobilePassword"} component={NorBankIdMobilePassword}/>
                <Stack.Screen name={"Fingerprint"} component={Fingerprint}/>
                <Stack.Screen name={"MainView"} component={MainView}/>
            </Stack.Navigator>
        </NavigationContainer>

此设置适用于新客户的入职流程。

所以第一个组件是 Welcome,然后用户继续移动,并可以选择向后移动。

但是,当他们完成该过程(最后一个屏幕)时,我希望他们到达一个 "Screen",它不在堆栈的顶部,而是自己的 "Root" 或 "Base" 查看。

我调查了什么

我尝试过使用多个堆栈导航器,这是不行的。还检查了 Tab 导航器,但是这会在我的屏幕下方创建一个选项卡菜单,这是我不想要的。

是否可以做我想做的事,或者我是否需要重新调整我现在的设置方式?

感谢您的宝贵时间,注意安全!

为什么您不想使用多个 Stack-Navigator?

我的方法是:

<NavigationContainer>
    { inWelcomeProcess && <WelcomeNavigator/>}
    <AuthNavigator/>
</NavigationContainer>
const AuthStackNavigator = createStackNavigator();

export const AuthNavigator = () => {
    return (
        <AuthStackNavigator.Navigator screenOptions={defaultNavOptions}>
           <AuthStackNavigator.Screen name="Auth" component={AuthScreen} options={authScreenOptions}/>
           // Your other screens (after finishing the on-boarding) should go here
        </AuthStackNavigator.Navigator>
        );
    };

const WelcomeStackNavigator= createStackNavigator();

export const WelcomeNavigator= () => {
    return (
        <WelcomeStackNavigator.Navigator screenOptions={defaultNavOptions}>
            // Your On-Boarding process screens here
        </WelcomeStackNavigator.Navigator>
    );
};