哪种方法适合使用React ref?

时间:2018-08-29 10:07:59

标签: javascript reactjs reference components

我正在尝试使用react refs。我进行了搜索,找到了两种实现引用的方法。

方法一:

constructor(props) {
  this.Modal = React.createRef();
}

<Modal ref={this.Modal} />

方法二:

show() {
  this.refs.Modal.SHOW();
}

<Modal ref="Modal" />

第一种方法是通过React.createRef,第二种是简单的方法。

我应该说,这两种方法都正确....

谢谢

1 个答案:

答案 0 :(得分:2)

使用字符串引用的第二种方法是旧方法,很快就会从react中删除(see more)。

第一个-自React 16.3起可用。

如果您使用的react低于16.3,请考虑使用另一种方法-callback refs

constructor(props) {
  super(props);

  this.modal = null;

  this.setModalRef = element => {
    this.modal = element;
  };
}

<Modal ref={this.setModalRef} />