为什么我无法通过反应选项卡导航将参数传递到另一个屏幕?

问题描述 投票:0回答:1

当我尝试使用反应导航将参数传递到另一个屏幕时,第二个屏幕将给出“无法读取未定义的属性‘params’”。我正在使用 React 选项卡导航,我的代码基于 https://github.com/expo/expo/tree/main/templates/expo-template-tabs

index.jsx:

navigation.navigate('(tabs)', {screen: 'screen2', params: {data: 'test'}})

screen2.jsx:

export default function ScreenTwo({ route }) {

  console.log(route.params.data)

  return (
    <ThemedView
      style={{
        flex: 1,
        justifyContent: "center",
        alignItems: "center",
      }}
    >
      <ThemedText type="title">{route.params.data}</ThemedText>
    </ThemedView>
  );
}

我尝试使用

useRoute
钩子来访问 params 对象,但它记录为未定义。

react-native react-navigation
1个回答
0
投票
当您发送这些参数时,

文档没有提到将参数包装在

params
中。我会写:

navigation.navigate('(tabs)', {screen: 'screen2', data: 'test'});
© www.soinside.com 2019 - 2024. All rights reserved.