是否可以将Tab导航器嵌套在Drawer导航器内部,然后从Drawer导航到特定的选项卡?
请考虑以下最基本的设置:
const PrimaryNav = createBottomTabNavigator({
ScreenOne,
ScreenTwo
})
export const DrawerNavigator = createDrawerNavigator({
Home: {
screen: PrimaryNav,
drawerLabel: 'Option 1',
},
Investment: {
screen: PrimaryNav,
drawerLabel: 'Option 2',
}
})
显然,无论您单击哪个选项,此设置都将解析为TabNav中的第一项。
有没有一种方法可以传递选项以专门导航到每个选项卡?我知道可以将ScreenOne和ScreenTwo传递给DrawerNavigator中的“屏幕”选项,但是我想保留这些选项卡。
答案 0 :(得分:3)
2020:在嵌套导航器中导航
onPress={() => {
navigation.navigate('Root', {
screen: 'Screen'
});
答案 1 :(得分:2)
React-navigation GitHub问题页面中有一个变通的解决方法mentioned:
navigation.dispatch(
NavigationActions.reset({
index: 0,
actions: [NavigationActions.navigate({ routeName: 'PrimaryNav' })]
})
);
navigation.navigate('ScreenTwo'))
不是最好的解决方案,但是当我遇到相同的问题时,我唯一能找到的东西。