我尝试使用 navigation.navigate('Merchant', store ) 将数据从 home.js 屏幕传递到 merchant.js 屏幕,但当我尝试实际使用 route.params 时,它返回 undefined。
这是我的 home.js:
这是我的 home.js:
export default function Home( { navigation }) {
...
{storeData.map(store => {
return (
<View>
<TouchableOpacity>
<Text style={styles.categoryName}
onPress={() => {navigation.navigate('Merchant', store)}}>
{store.name}
</Text>
</TouchableOpacity>
Merchant.js
function Merchant({ navigation, route }) {
console.log(route);
...
}
输出:
{"key": "Merchant-86K9u5ytF32VGMRcO9s2g", "name": "Merchant", "params": undefined}
我不知道发生了什么。我试过使用 navigation.push() 和 navigate('Merchant', {name: store.name}),但仍然得到 undefined。
如果您想粘贴更多与我的堆栈导航相关的代码,我可以查看。
storeData
中的数据类型是什么?(字符串?字符串数组?对象数组......) - Daniyal Shaikh