导航('DrawerOpen')不使用createSwitchNavigator和createStackNavigator

Jun*_*dir 4 react-native react-native-android native-base

请检查这个世博小吃.

我有一个用于登录和未登录状态的switch-navigator.

当用户登录时,切换器加载一个DrawerNavigator加载Screen1并加载侧边栏(SideBar.js)的contentComponent

在里面,Screen1我正在调用菜单汉堡按钮this.props.navigation.navigate('DrawerOpen');onPress事件.但它没有打开抽屉.我在做什么呢

tua*_*ran 15

您在未包含的屏幕中调用DrawerNavigation,因此无法导航.在任何地方打开抽屉只需使用

import { DrawerActions } from 'react-navigation';
...
openDrawer = () => {
  this.props.navigation.dispatch(DrawerActions.openDrawer());
}
...
Run Code Online (Sandbox Code Playgroud)

  • undefined 不是一个对象(this.props.navigation)! (2认同)

小智 5

用这个:

this.props.navigation.openDrawer();
Run Code Online (Sandbox Code Playgroud)