从初始SwitchNavigator屏幕控制目标StackNavigator的初始状态

时间:2019-07-29 19:30:51

标签: react-native react-navigation

我有一个SwitchNavigator“开关”。初始状态“ root”是一个屏幕组件,它只是加载状态并确定StackNavigator“ stack”的正确初始路径(A或B)。

--switch
     --root
     --stack
        -A
        -B

“根”组件告诉Switch Navigator切换到“堆栈”然后有条件地以“ A或B”开头的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

在根组件中,完成工作后,只需像这样调用navigation.navigate

this.props.navigation.navigate(condition ? 'A' : 'B');

答案 1 :(得分:0)

我通过在“堆栈”上执行重置操作来运行导航请求,从而使此工作变得简单。

const resetAction = StackActions.reset({
    index: 0,
    key:'stack',
    actions: [
        NavigationActions.navigate({ routeName: 'B' })
    ]
  })