React native 将导航StackNavigator渲染到特定屏幕

React native 将导航StackNavigator渲染到特定屏幕,react-native,react-navigation,React Native,React Navigation,如何将堆栈导航器从渲染到特定屏幕? 我是否可以传入一个屏幕名作为道具,以便在初始加载时将StackNavigator渲染到该屏幕 更新: 我通过向堆栈导航器传递一个道具,然后有条件地设置initialRouteName来解决这个问题: const Main = RootNavigator(userLoggedIn); 然后像这样渲染主视图 而不是直接使用RootNavigator 然后在导航器代码中: export const RootNavigator = (userLoggedIn= fa

如何将堆栈导航器从渲染到特定屏幕? 我是否可以传入一个屏幕名作为道具,以便在初始加载时将StackNavigator渲染到该屏幕

更新: 我通过向堆栈导航器传递一个道具,然后有条件地设置initialRouteName来解决这个问题:

const Main = RootNavigator(userLoggedIn);
然后像这样渲染主视图
而不是直接使用RootNavigator

然后在导航器代码中:

export const RootNavigator = (userLoggedIn= false) => {
  return StackNavigator(
    {
      LoggedIn: {
        screen: LoggedIn,
      },
      LoggedOut: {
        screen: LoggedOut,
      }
    },{
      initialRouteName: userLoggedIn? "LoggedIn" : "LoggedOut"
    }
  );
}; 

是的,当您初始化
StackNavigator
时,第二个参数是选项。因此,您可以:

StackNavigator({ <Your-Routes> }, { initialRouteName: 'MyFirstPage' });
StackNavigator({},{initialRouteName:'MyFirstPage'});

是,当您初始化
堆栈导航器时,第二个参数是选项。因此,您可以:

StackNavigator({ <Your-Routes> }, { initialRouteName: 'MyFirstPage' });
StackNavigator({},{initialRouteName:'MyFirstPage'});

查看示例和文档不是有用的答案。您需要添加有关代码的更多详细信息。这是在哪里确定的?你的道具/状态是什么?这些不同的屏幕是独立的组件吗?您使用的是Redux还是其他状态容器?有不同的方法来处理这个问题。为什么你要将userLoggedIn设置为false?我正在实现同样的事情,但无法传递loginValue查看示例和文档不是一个有用的答案。你需要添加更多关于代码的详细信息。这是在哪里确定的?你的道具/状态是什么?这些不同的屏幕是独立的组件吗?您使用的是Redux还是其他状态容器?有不同的方法来处理这个问题。为什么你要将userLoggedIn设置为false?我正在实现同样的事情,但无法传递loginValue我已经知道我可以在StackNavigator中设置initialRouteName,但我想做的是使initialRouteName动态,这取决于某些属性。i、 e如果我登录了,我想在导航器中显示screenA,如果我是loggedOut show screenBI,我已经知道我可以在StackNavigator中设置InitialRouteName,但我想做的是使InitialRouteName动态,这取决于一些道具。i、 e如果我登录,我想在导航器中显示screenA,如果我是loggedOut,则显示screenB