反应导航通行证导航道具

时间:2019-04-25 18:26:34

标签: react-native-navigation

根据react导航文档,当您从堆栈导航器中选择一个屏幕时,导航道具就会通过。

例如,如果我注册了两条路线: 主屏幕 详细信息

export default class HomeScreen extends React.Component {


  render() {
    return (
      <View style={styles.container}>
      <Button
        onPress={() => this.props.navigation.navigate('Details')}>
        <Text>Press me</Text>
      </Button>
      </View>
    );
  }

}

足够简单!但是,让我们假设我有另一个组件被称为:

export default class HomeScreen extends React.Component {


  render() {
    return (
      <View style={styles.container}>
      <MyOtherComponent />
      </View>
    );
  }

}

我想要这样:

<Button
            onPress={() => this.props.navigation.navigate('Details')}>
            <Text>Press me</Text>
          </Button>

要进入,我该怎么做? 我可以将道具从HomeScreen传递到MyOtherComponent吗?

1 个答案:

答案 0 :(得分:0)

我实际上在文档中找到了答案。对于其他人来说,这可能会帮助到像我这样的所有文档。

我可以使用withNavigation

在MyOtherComponent的示例中,我可以执行以下操作:

从“反应导航”中导入{withNavigation};

class MyOtherComponent extends React.Component {
render stuff here
}

使用Navigation(MyBackButton)导出默认值;