我有一个使用 创建的底部选项卡栏createBottomTabNavigator
,当用户按下其中一个选项卡时,我需要导航到特定堆栈(使用创建createStackNavigator
)。我已经可以这样做了,但现在我需要根据条件决定首先进入该堆栈中的哪个屏幕。我知道可以设置为确保特定屏幕始终首先显示的 initialRouteName 属性,所以也许我可以使用它?
基本上,我希望用户在第一次按下选项卡时查看教程,然后从第二次开始查看实际屏幕。
这是我目前拥有的(不工作):
const shouldGoToTutorial = async () => {
await AsyncStorage.getItem('hasSeenTutorial').then((hasSeenTutorial) => {
return hasSeenTutorial ? 'Screen1' : 'Tutorial';
});
}
const OtherStack = createStackNavigator({
Tutorial: TutorialScreen,
Other: OtherScreen
}, {
initialRouteName: shouldGoToTutorial
});