【发布时间】:2020-12-16 07:58:37
【问题描述】:
我遇到了 react-native/navigation 的问题。我正在使用
npm -> 6.14.8
node -> 14.15.0
pod -> 1.10.0
// package.json
"react": "16.13.1",
"react-native": "0.63.3",
"@react-navigation/bottom-tabs": "^5.11.2",
"@react-navigation/native": "^5.8.10",
"@react-navigation/stack": "^5.12.8"
我在屏幕参数和门未定义之间传递
//Homescreen.js 常量 HomeScreen = ({ 导航 }) => { 返回( { navigation.navigate('Shop', { value: 'Shop' }) }}> 去商店 )}
//ShopScreen.js
const ShopScreen = ({ route, navigation }) => {
// const { value } = route.params // get error
console.log(route) // get {"key": "Shop-BJc0xwbAXOUpmKPB424H0", "name": "Shop", "params": undefined}
console.log(route.params) // get undefined
console.log(route.params?.value) // get undefined
return (
<>
<Button
title="Go to Home"
onPress={() => navigation.navigate('Home', { value: 'Home' })}
/>
<ShopContainer />
</>
)
}
// rootNavigator.js
function HomeStackScreen(props) {
return (
<HomeStack.Navigator initialRouteName={'Home'}>
<HomeStack.Screen
name={'Home'}
component={HomeScreen}
options={{
headerTitle: () => <Logo />,
headerRight: () => <SideContainer />,
headerLeft: () => <SideContainer image={VIDEOCAM} />
}}
/>
</HomeStack.Navigator>
)
}
function ShopStackScreen(props) {
return (
<ShopStack.Navigator initialRouteName={'Shop'}>
<ShopStack.Screen
name={'Shop'}
component={ShopScreen}
options={{
headerTitle: () => <Logo />
}}
/>
</ShopStack.Navigator>
)
}
【问题讨论】:
-
您可以尝试相同的方法,但使用推送而不是导航?只是看看这是否会改变一些东西
-
可以分享导航容器吗?
-
它的工作,但不是将我重定向到商店或主屏幕@LeoOdishvili
-
使用
push('Home', {value: 'Home'})不会将我重定向到特定屏幕 -
@OAslan,我分享导航容器
标签: javascript react-native navigation react-native-navigation