react中查找DOM的方法
1, 给标签设置ref属性, 通过this.refs调用 (老版本语法,将要废除)
<h1 ref="myH1"></h1>
this.refs.myH1
2, 在构造器中创建ref全局变量, 在标签中ref属性动态绑定这个全局变量, 通过全局变量的current字段调用
this.myH2 = React.createRef()
<h2 ref={this.myH2}></h2>
this.myH2.current
3, 在标签ref属性绑定函数, 在函数中定义全局变量赋值, 通过全局变量调用
<h3 ref={ ele => this.myH3 = ele }></h3>
this.myH3
4, 使用hook语法查找DOM
const d1 = useRef()
<div id="d1" ref={d1}>div1</div>
d1.current
5, 使用hook语法查找DOM
const d2 = useRef()
<div id="d2" ref={el => d2=el}>div1</div>
d2
注意:
1, 在父组件中用ref获取子组件对象, 必须保证子组件是类组件, 函数式组件获取结果是undefined
2, 父组件使用ref获取子组件对象后, 可以对子组件状态数据和函数执行调用和修改