未定义不是对象(评估“ navigation.navigate”)

时间:2019-03-18 12:18:13

标签: react-native navigation const react-props

我试图在react native中从一个屏幕导航到选项卡栏内的另一个屏幕。 但是,我收到以下错误消息

  ButtonClickCheckFunction = () => {
    const { navigation } = this.props;
    navigation.navigate('detailsScreen', { detailsScreen: jsonData });
  }

有什么建议吗?

对于主屏幕,我们在标签栏中创建了堆栈,

    const AppStack = createAppContainer(createDrawerNavigator({
      Dashboard: {
        screen: ProfileStack,
      },
      Connect: {
        screen: Connect,
      },
      screen1: {
        screen: Screen1,
      }

});

但是,在“仪表板”屏幕中,我们显示了标签栏。我正在使用tab2。因此,从tab2,我有详细信息屏幕。在该详细信息屏幕中,我必须显示带有后退按钮箭头的导航栏,例如自定义图像。

那么,如何解决这个问题?

enter image description here

1 个答案:

答案 0 :(得分:0)

如果您发布更多代码,我们将能够更好地回答您的问题。

不过,从错误消息来看,您似乎没有正确创建组件,因此设置了navigation属性。您需要确保使用withNavigation高阶组件来包装该组件。

export default withNavigation(MyComponent);