我想从 DrawerNav 导航回 Login。在函数内部使用 alert('Alert') 是可以的。
我有一个带有 Login 和 DrawerNav 的 StackNavigator
const MyStackNavigator = StackNavigator({
Login : { screen : Login },
DrawerNav : { screen : DrawerNav }
}, {
navigationOptions : { header : false }
}
);
从登录我可以导航到我的主屏幕 DrawerNav 使用
_login = () => {
this.props.navigation.navigate('DrawerNav');
}
DrawerNav 内部是一个 DrawerNavigator(显然)
const MyDrawerNavigator = DrawerNavigator({
... screens ...
}, {
initialRouteName : '',
contentComponent : CustomContent,
drawerOpenRoute : 'DrawerOpen',
drawerCloseRoute : 'DrawerClose',
drawerToggleRoute : 'DrawerToggle'
}
);
const CustomContent = (props) => (
<View>
<DrawerItems {...props} />
<TouchableOpacity
onPress={ this._logout }>
<Text style={ styles.logout }>Logout</Text>
</TouchableOpacity>
</View>
)
如您所见,注销不是菜单的一部分,而是在抽屉内
_logout = () => {
this.props.navigation.navigate('Login');
}
这给了我一个错误
undefined is not an object (evaluating '_this.props.navigation')