学习笔记——React Ref

2018-12-12  本文已影响0人  Never_er

由于React的单向数据流设计,所以典型的 React 数据流中, 属性(props)是父组件与子组件交互的唯一方式。要修改子组件,你需要使用新的 props 重新渲染它。但有些时候我们需要强制修改子组件,比如form表单中的validation。React提供了Ref,用于访问在render中创建的Dom元素或React组件实例。

Ref 的使用场景

Ref的定义和使用

Forwarding Refs

注意事项

class CustomInputTextWithCallbackRefBind extends React.Component {
    constructor(props){
        super(props);

        this.inputTextRef = null;

        this.handleInputTextRef = this.handleInputTextRef.bind(this);
        this.addCustomInputRef = this.addCustomInputRef.bind(this);
    }

    handleInputTextRef() {
        this.inputTextRef.focus();
    }

    addCustomInputRef(ref) {
        this.inputTextRef = ref;
    }

    render() {
        return (
          <div>
              <input
              type="text"
              ref={this.addCustomInputRef}
              />
              <input
              type="button"
              value="callback Ref bind"
              onClick={this.handleInputTextRef}/>
          </div>
        );
    }
}

export default CustomInputTextWithCallbackRefBind;
上一篇 下一篇

猜你喜欢

热点阅读