Bonjour, je essaye de naviguer vers le prochain composant en utilisant la fonction navigate
. J'utilise react-navigation
pour la navigation entre plusieurs composants.
Supposons que j'ai le composant index.android.js
et DashboardScreen.js
. J'essaie de naviguer vers le composant DashboardScreen.js
depuis le composant index.
La navigation fonctionne mais le composant index reste toujours dans la pile de composants. Lorsque je retourne en arrière, il ouvre index.android.js
ce qui ne devrait pas être le cas. Est-ce que quelqu'un sait comment gérer cela dans react-native
. Sur Android, finish()
fonctionne pour cela.
navigate("DashboardScreen");
Lorsque je navigue de SplashScreen
vers EnableNotification
, alors SplashScreen
devrait être détruit, si je navigue de EnableNotification
vers CreateMessage
, alors EnableNotification
devrait être détruit et si je navigue de CreateMessage
vers DashboardScreen
, alors CreateMessage
devrait être détruit. Pour le moment, aucun composant n'est détruit.
index.android.js
class SplashScreen extends Component {
render() {
if (__DEV__) {
console.disableYellowBox = true;
}
const { navigate } = this.props.navigation;
AsyncStorage.getItem("@ProductTour:key").then(value => {
console.log(value);
if (value) {
navigate("DashboardScreen");
}
});
return (
....
);
}
}
const App = StackNavigator(
{
Splash: {
screen: SplashScreen,
navigationOptions: {
header: {
visible: false
}
}
},
EnableNotification: {
screen: EnableNotificationScreen,
navigationOptions: {
header: {
visible: false
}
}
},
CreateMessage: {
screen: CreateMessageScreen,
navigationOptions: {
header: {
visible: false
}
}
},
DashboardScreen: {
screen: DashboardScreen,
navigationOptions: {
header: {
visible: false
}
}
}
},
{
initialRouteName: "Splash"
}
);