如何获取React-Native中其他组件的状态值?

时间:2019-05-12 08:09:20

标签: react-native components state

showConfirmationMessage = () => {
    Alert.alert(
      'Confirmation Message',
      'Proceed?',
      [
        {text: 'BACK', onPress: () => this.setState({ loading: false })},
        {text: 'CONFIRM', onPress: () => this._getTaskData()},
      ],

      {cancelable: false},
    );
  }



_getTaskData = () => {
    console.log(this.component2.getValue());
}

这就是我调用该函数的方式。 当我直接调用_getTaskData()时,它可以正常工作。但是,当我像上面那样通过确认消息调用它时,它给出了错误。

1 个答案:

答案 0 :(得分:1)

Component2内编写一个函数以获取输入值:

getValue = () => {
    return this.state.inputValue;
}

并在Component2内为您的Component1设置参考

<Component2 ref={r => this.component2 = r} />

现在您可以通过this.component2参考获得输入值

this.component2.getValue();