如何在react-native中将数据发送到另一个页面

时间:2019-04-02 13:00:22

标签: react-native

我有Main组件和Bar组件。我想向Bar组件发送一些信息。

这是我的代码:

render() {

<View>
  <View>
    <Bar />
  </View>


  <View>
     <TouchableOpacity onPress={() => this.props.navigation.navigate('Bar', { Info:'test' }) }>
          </TouchableOpacity>
  </View>
<View/>

}

我不能这样发送,因为Bar组件位于此组件中。我该如何解决。

1 个答案:

答案 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和   州。道具由父母设定,并在整个过程中固定   组件的寿命。对于将要更改的数据,我们必须   使用状态。