react-native - 如何在结合使用 createStackNavigator 和 create createDrawerNavigator 时设置默认屏幕
问题描述
我设置了我的 react-native 应用程序的路线,并试图结合 createStackNavigator 和 createDrawerNavigator。因此,我抽屉中的一个屏幕是 stackNavigator(例如:主页、新闻、图像。其中 Images 是 stackNavigator)并且 stackNavigator 有另外两个屏幕(例如:Feed 和 Grid),我试图将 Feed 设置为默认屏幕,所以我总是被重定向到 Feed。
我试过类似的东西:initialRouteName:'Feed'
但是,如果导航到网格而不是导航到抽屉中的某个屏幕,然后返回到“图像”,它会打开网格而不是提要
const ImagesTab = createStackNavigator(
{
Feed: { screen: Feed },
Grid: { screen: Grid },
},
{
headerMode: 'none',
navigationOptions: {
headerVisible: false,
}
}
)
const AppDrawer = createDrawerNavigator({
home: { screen: Home },
news: { screen: News },
images: { screen: ImagesTab },
galeria: { screen: AppTabNavigator },
},
{
contentComponent: DrawerContent
}
);
解决方案
您应该为您的两个导航器设置initialRouteName。
const ImagesTab = createStackNavigator(
{
Feed: { screen: Feed },
Grid: { screen: Grid },
},
{
headerMode: 'none',
navigationOptions: {
headerVisible: false,
},
initialRouteName: 'Feed'
}
)
const AppDrawer = createDrawerNavigator({
home: { screen: Home },
news: { screen: News },
images: { screen: ImagesTab },
galeria: { screen: AppTabNavigator },
},
{
contentComponent: DrawerContent,
initialRouteName: 'images'
}
);
推荐阅读
- c# - 如何使用 AD 帐户保持我的应用程序“经过身份验证”?C#
- snakemake - Snakemake 运行子工作流程,但不运行我的工作流程的其余部分(直接转到全部规则)
- c++ - 如何从随机值范围内删除某个元素?
- visual-studio-code - 是否可以在不删除未使用的导入的情况下启用 source.organizeImports?
- android - 如何在颤振中创建三次单击按钮
- excel - 将文件夹中特定的excel文件复制到主工作表中
- r - 按字母顺序重新排列垂直轴并更改堆叠百分比条形图(ggplot2)的二进制变量的位置
- ruby - 如何在 Ruby 2.7.0 上安装 Nokogiri
- python - 我可以使用 pyspark 将复杂的 json 对象转换为 Azure Databricks 中数据框中的多行吗?
- mysql - 如何在 MySQL 中查找列是否为 auto_increment