我正在尝试让drawernavigator
与stacknavigator
一起使用,但我无法正确嵌套。即我的问题是,仅使用this.props.navigation.goBack()
时我无法使用createDrawerNavigator
。它根本行不通......但我可以看到createStackNavigator
按预期工作。我可以使用goback()
和我寻找的poptotop。所以现在我试着嵌套这两个,但还没有成功。还找到一些例子是如此困难......任何人都可以指出我正确的方向如何嵌套这两个或如何只用goBack()
工作createDrawerNavigator
?
我设法将它嵌套了但是我遇到了一些问题。
~~const DraverNav = createDrawerNavigator(
{
Second: { screen: Second },
}
);
const Navigator = createStackNavigator(
{
Login: { screen: LoginScreen },
Home: { screen: DraverNav },
});~~
我想显示第一个登录屏幕,然后转到Second
屏幕作为该应用的主屏幕。但我的主屏幕总是登录screnn,当我navigation.goBack()
时,我最终回到Login
而不是Second
。此外,当移动到drawernavigation
时,我无法为标题栏设置tittle。
这是我当前的实现,几乎按预期工作。混乱的一件事是我打开后不能关闭抽屉,我从抽屉导航器中移动到另一个屏幕......
const StackNav = createStackNavigator(
{
Home: { screen: HomeScreen },
ScanCode: { screen: ScanCodeModal },
ScanResult: { screen: ScanResultScreen },
}, {
headerMode: 'none'
});
const Navigator = createDrawerNavigator(
{
SignInScreen: { screen: SignInScreen },
Main: {
screen: StackNav, navigationOptions: {
drawerLabel: () => null
}
},
Home: { screen: HomeScreen },
ScanCode: { screen: ScanCodeModal }
}, {
initialRouteName: 'SignInScreen'
});