【问题标题】:React navigation 5 alfa cannot navigate between nested child from different parent navigatorsReact navigation 5 alfa 无法在来自不同父导航器的嵌套子级之间导航
【发布时间】:2019-09-25 20:08:42
【问题描述】:

这是我的应用导航器文件:


const SettingStack = createStackNavigator();
const settingStackScreen = () => {
    return (
        <SettingStack.Navigator >
            <SettingStack.Screen name="Setting" component={SettingScreen} />
            <SettingStack.Screen name="Detail" component={DetailScreen} />
        </SettingStack.Navigator>
    );
}

const ElegantStack = createStackNavigator();
const elegantStackScreen = () => {
    return (
        <ElegantStack.Navigator >
            <ElegantStack.Screen name="Home" component={HomeScreen} />
            <ElegantStack.Screen name="Todos" component={TodosScreen} />
        </ElegantStack.Navigator>
    );
}

const Tab = createMaterialBottomTabNavigator();
const appNavigator = () => {
    return (
        <NavigationNativeContainer >
            <Tab.Navigator >
                <Tab.Screen name="Elegant" component={elegantStackScreen} />
                <Tab.Screen name="Setting" component={settingStackScreen} />
            </Tab.Navigator>
        </NavigationNativeContainer>
    );
}

这也是我的 HomeScreen 文件:


const home = () => {
    const navigation = useNavigation();
    return (
        <View style={styles.screen}>
            <Text>Home</Text>

            <Button title="Go Detail" onPress={() => { navigation.navigate('Detail') }} />
            <Button title="Go Todos" onPress={() => { navigation.navigate('Todos') }} />

        </View>
    );
}

我想从主屏幕导航到详细屏幕 但起初,它不起作用 手动进入设置选项卡后 它将适用于下一次尝试 有人对此有任何想法吗?

我正在使用 react-navigation5-alfa 和 react-native 0.61.1

【问题讨论】:

    标签: reactjs react-native react-navigation react-navigation-stack react-navigation-drawer


    【解决方案1】:

    我刚刚找到了解决办法。

    这是文档中提到的您应该遵循的方法。

    https://reactnavigation.org/docs/nesting-navigators/#navigating-to-a-screen-in-a-nested-navigator

    在你的情况下应该是,

    navigation.navigate('Setting', {
      screen: 'Detail',
      params: { key: 'value' },
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-25
      • 2021-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-28
      • 2018-07-31
      相关资源
      最近更新 更多