我有Main组件和Bar组件。我想向Bar组件发送一些信息。
这是我的代码:
render() {
<View>
<View>
<Bar />
</View>
<View>
<TouchableOpacity onPress={() => this.props.navigation.navigate('Bar', { Info:'test' }) }>
</TouchableOpacity>
</View>
<View/>
}
我不能这样发送,因为Bar组件位于此组件中。我该如何解决。
答案 0 :(得分:2)
由于您位于同一组件中,所以setState
是您的答案
class Comp extends React.Component {
state = {
info: '',
};
render() {
const { info } = this.state;
return (
<View>
<View>
<Bar info={info} />
</View>
<View>
<TouchableOpacity
onPress={() => {
this.setState({ info: 'test' });
}}
/>
</View>
</View>
);
}
}
状态控制组件的数据有两种:props和 州。道具由父母设定,并在整个过程中固定 组件的寿命。对于将要更改的数据,我们必须 使用状态。