index.js 有这样的代码,有 StackNavigator
const App = StackNavigator({
Home: {
screen: Home,
},
});
const AppNavigator = StackNavigator(
{
Login: {
screen: SignIn,
},
SignUp: {
screen: SignUp,
},
myApp: { screen: App },
},
{
gestureEnabled: false,
headerMode: 'none',
},
);
我正在登录并推送到 myApp 路由,
this.props.navigation.dispatch(
NavigationActions.reset({
index: 0,
key: null,
actions: [NavigationActions.navigate({ routeName: 'myApp' })]
})
);
所有导航推送和弹出 goback 工作现在我正在尝试切除不起作用。
从家里我想去登录屏幕。我正在进行注销操作
logoutPressed() {
const resetAction = NavigationActions.reset({
index: 0,
actions: [NavigationActions.navigate ({ routeName:
'Login' })],
});
this.props.navigation.dispatch(resetAction);
}
错误:routeName:在 StackNavigator 中找不到“登录”
什么问题。如何修复。
最佳答案
你必须按如下方式编写堆栈导航器
const App = StackNavigator({
Home: {
screen: Home,
},
Login: {
screen: SignIn,
},
});
App StackNavigator 没有用于登录的路由,您需要在其导航中包含路由名称
关于ios - react 导航重置操作不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48641182/