首页 > 解决方案 > 从 Stack Navigator 切换选项卡屏幕

问题描述

所以,我在 React Native Navigation 中有以下设置。

const Tabs = createBottomTabNavigator({
    Home: Home,
    Profile: Profile,
    Chats: Chats
})

const ParentStack = createStackNavigator({
    Tabs: Tabs,
    UserDetails: UserDetails
})

Tabs 屏幕是 ParentStack 堆栈导航器中的初始屏幕,而 Home 是 Tabs TabNavigator 中的初始屏幕。我想从 UserDetails 屏幕导航到 Chats 屏幕。我在 UserDetails Screen 中尝试了以下代码,但没有成功。

navigation.navigate("Tabs", { screen: "Chats" })

有谁知道如何做到这一点?谢谢你。

标签: react-nativereact-navigationreact-native-navigation

解决方案


您必须在同一层次结构中提及聊天屏幕,我的意思是用户详细信息。您必须为每个选项卡创建单独的导航器。

const Tabs = createBottomTabNavigator({
    Home: Home,
    Profile: Profile,
    Chats: Chats
})

const UserDetailsNavigator = createStackNavigator({
   
    UserDetails: UserDetails,
    Chats: Chats

})
const ParentStack = createStackNavigator({
    Tabs: Tabs,
    UserDetailsNavigator: UserDetailsNavigator
})

那可行。


推荐阅读