根据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吗?
答案 0 :(得分:0)
我实际上在文档中找到了答案。对于其他人来说,这可能会帮助到像我这样的所有文档。
我可以使用withNavigation
在MyOtherComponent的示例中,我可以执行以下操作:
从“反应导航”中导入{withNavigation};
class MyOtherComponent extends React.Component {
render stuff here
}
使用Navigation(MyBackButton)导出默认值;