react-native - React Native Navigation:转到特定的堆栈导航屏幕
问题描述
我正在使用 React Navigation 5。
在顶部我有一个抽屉导航器,带有以下屏幕:
<Drawer.Navigator>
<Drawer.Screen name="One" component={StackNavigatorOne} />
<Drawer.Screen name="Two" component={StackNavigatorTwo} />
<Drawer.Screen name="Three" component={StackNavigatorThree} />
<Drawer.Navigator/>
内StackNavigatorOne
,我有一个堆栈导航器,
<Stack.Navigator>
<Stack.Screen name="Screen1" component={Screen1} />
<Stack.Screen name="Screen2" component={Screen2} />
<Stack.Screen name="Screen2" component={Screen3} />
</Stack.Navigator>
在StackNavigatorOne中,屏幕的默认顺序是Screen1、Screen2、Screen3,所以调用这个stack Navigator时,默认显示Screen1。我不想更改此顺序。
但是,从抽屉导航器中,当用户单击时,DrawerScreen One
我希望用户进入Screen2
。StackNavigatorOne
有可能吗?
解决方案
在 React Navigation 中,您可以检查Nested Navigator。
首先选择您的根组件One
,然后选择Stack Navigator
.
navigation.navigate('One', {
screen: 'Screen2',
params: {
...
},
});
我假设,单击后退将转到您导航的屏幕。如果你想去Screen1
,使用lazy
选项 as false
。我没有对此进行测试,drawerNavigator
但是对于底部导航器,我们使用了lazy
选项 as false
。
推荐阅读
- c# - 一旦消息根据意图从 LUIS 转发到 QnA,则不会从第二个实例返回到 c# 中的 LUIS。该怎么办?
- ios - Swift - 方法调配
- bash - 为数据表中的缺失值添加 0 行
- jquery - 另一个点击函数中的jQuery点击函数
- python - Flask 安装在服务器中,但仍然收到“没有名为 flask 的模块”错误
- apache-spark - 在 pyspark lambda 映射函数中使用 keras 模型
- php - Laravel 5.5 Composer 更新但弹出错误
- python - 关于Django教程官方part3 html代码的问题
- ios - IOS设备上的颤振数字键盘没有完成按钮
- javascript - 将碳日期舍入到最近的前 6 小时标记