一切都按预期工作,但我不知道如何退出
我有一个<Main/>
组件,在示例中呈现<DrawerNavigationMenu/>
这是我的<DrawerNavigationMenu/>
render() {
return (
<DrawerNavigation
renderHeader={this._renderHeader}
drawerWidth={300}
initialItem="home">
<DrawerNavigationItem
id="home"
selectedStyle={styles.selectedItemStyle}
renderTitle={isSelected => this._renderTitle('Home', isSelected)}
renderIcon={isSelected => this._renderIcon('md-home', isSelected)}>
<StackNavigation
id="home"
defaultRouteConfig={{
navigationBar: {
backgroundColor: '#2497b7',
tintColor: '#fff',
height: 60,
},
}}
initialRoute={Router.getRoute('home')}/>
</DrawerNavigationItem>
<DrawerNavigationItem
id="logout"
selectedStyle={styles.selectedItemStyle}
renderTitle={isSelected => this._renderTitle('Logout', isSelected)}
renderIcon={isSelected => this._renderIcon('md-exit', isSelected)}>
<StackNavigation
id="root"
initialRoute={Router.getRoute('root')}/>
</DrawerNavigationItem>
</DrawerNavigation>
);
}
在“退出”项我需要重置导航堆栈并渲染我的Root场景而无法返回
我尝试使用initialStack=
代替initialRoute=
,就像这样
<StackNavigation
id="root"
initialStack={[Router.getRoute('root')]}/>
但是当我回击(Android)时,它仍然会回到Home场景。我这里没有明确使用Redux。这是实施退出导航的正确方法吗?有任何想法吗?请!
答案 0 :(得分:1)
提供DrawernavigationItem道具onPress
并调用在身份验证和登陆页面之间切换的功能。
<DrawerNavigationItem
id="Sign out"
selectedStyle={styles.selectedItemStyle}
onPress={()=>{this.signOut()}}
renderTitle={isSelected => this._renderTitle('Sign out', isSelected)}
/>