如何更改路由文件中的优先屏幕加载-反应导航

时间:2018-08-07 06:28:44

标签: react-native

我正在使用react-navigation

现在我想从screen内部更改第一个StackNavigator负载。

export const LoginStack = StackNavigator({
  Login: {
    screen: Login,
  },
  Phone: {
    screen: Phone,
  },
  Activation: {
    screen: Activation,
  }
},
{
  headerMode: 'none',
  initialRouteName: 'Phone',
});


export const HomeStack = StackNavigator({
  Home: {
    screen: ContainerNavs,
  },
  Notifications: {
    screen: Notification,
  },
  Question: {
    screen: Question,
  },
  SelectContacts: {
    screen: SelectContacts,
  },
  Options: {
    screen: Options,
  },
},
{
  headerMode: 'none'
});





export const RootNavigator = StackNavigator({
  Login: {
    screen: LoginStack,
  },
  Home:{
    screen: HomeStack,
  },
},{
  mode: 'modal',
  headerMode: 'none',
  initialRouteName: 'Login',
}

);

但是我的路由器总是加载Login屏幕。但我想加载Phone屏幕。

1 个答案:

答案 0 :(得分:0)

只需替换屏幕并设置要首先加载的第一个屏幕即可。就是这样...所以我只需将Phone屏幕设置在stacknavigator

的顶部
 export const LoginStack = StackNavigator({
   Phone: {
    screen: Phone,
   },
  Login: {
    screen: Login,
   }, 
  Activation: {
   screen: Activation,
  }
},
{
 headerMode: 'none',
 initialRouteName: 'Phone',
 });