Я новичок, чтобы реагировать на нативную разработку.В данный момент я пытаюсь настроить навигацию для процесса выхода из системы.Это мой поток приложений прямо сейчас Home -> SignIn -> Dashboard
.Теперь, когда пользователь нажимает кнопку выхода из системы на панели инструментов, он должен вернуться на главный экран.Это хорошо работает в первый раз, но проблема в том, что, если пользователь уже вошел в систему, он пропускает Home
и SignIn
и переходит прямо к Dashboard
, и если я пытаюсь выйти из него, это фактически толкаетв новое Home
представление, сохраняя Dashboard
в стеке, и когда я SignIn
, он выполняет поп-переход к Dashboard
, показывая старые данные состояния.Я немного покопался, и он сказал, что у реакции нет положения, чтобы выскочить к конкретному представлению, и нам, возможно, придется использовать хак, чтобы заменить экран, но я не уверен, как поступить.Ниже мой текущий код для стекового навигатора и процесса выхода из системы.
const Navigator = createStackNavigator({
SplashScreen: {
screen: SplashScreen,
navigationOptions: {
header: null
}
},
Home: {
screen: Home,
navigationOptions: ({ navigation }) => ({
header: null
})
},
SignIn: {
screen: SignIn,
navigationOptions: {
header: null
}
},
Dashboard: {
screen: Dashboard,
navigationOptions: {
header: null
}
}
});
const Drawer = DrawerNavigator(
{ Navigator: { screen: Navigator } },
{ contentComponent: NavigationDrawer }
);
//In Dashboard
logoutUser = () => {
//Perform API call to logout user
this.props.navigation.navigate("Home");
}