【发布时间】:2021-06-12 08:46:43
【问题描述】:
我正在使用 React Native 0.63、Expo 40 和 React Navigation 5。我在 Navigation Container 中具有以下功能组件 - 文字切换导航器:
switch (appState) {
case 'StateA':
return <FirstStackNavigator/>;
case 'StateB':
return <SecondStackNavigator optionValue={true}/>;
case 'StateC':
return <SecondStackNavigator optionValue={false}/>;
case 'StateD':
return <ThirdStackNavigator />
}
这是我的 SecondStackNavigator:
<Stack.Navigator>
<Stack.Screen name="FirstRoute" component={FirstScreen} initialParams={{ option: optionValue }} />
...
</Stack.Navigator>
根据幕后的一些事情,应用程序会通过状态 A-D 转换或完全跳过状态 - 这是一个复杂的启动过程。
我的问题是从 StateB 到 StateC 的过渡。当状态转换发生时,什么都没有发生,我想我明白为什么 - 使用相同的导航器,所以 RN 只是不理会层次结构。很公平。
但是,我想要一个与 StateC 一起使用的全新 SecondStackNavigator,第一页在堆栈上,这样我们就可以使用新选项再次跟踪该导航器。
我尝试在屏幕和导航器上使用按键,但没有真正的运气。我是否遗漏了一些 React Navigation 的基础知识,或者我在这里遗漏了什么?
【问题讨论】:
标签: react-native react-navigation react-navigation-v5