ref的原理
render(){
return <input ref={element => {this.element = element}/>
}
当我们需要访问底层DOM节点来执行一些命令式操作,ref就很重要了。但一般情况下都应该尽量避免使用ref,因为它让我们的代码更偏向与命令式,可读性与可维护性都变差了。
ref的用法与原理: 在返回元素的ref属性上定义一个回掉函数。这个回掉函数会在组件挂在时被调用,元素参数表示输入的DOM实例,值得注意的是,卸载时也会调用这个回掉,并传入null参数来释放内存。 设置非原生组件(以大写字母开头的自定义组件)的ref回掉时,接收到的回掉参数引用不是DOM节点实例,而是组件本身的实例。允许我们访问子组件的内部实例。