react之组件2
react如何获取真实的DOM?
- 回调
- createRef
- 字符串
回调
<div id = 'vans' ref = {el=>this.vans = el}>
//................................
console.log(this.vans);
只有在第一次render
之后才可以访问到ref
!
其实我们在componentDidMount
里面就可以访问它了。
createRef
- 首先,在构造函数里面声明一句:
this.vans = createRef();
- 然后,在div中使用ref绑定:
<div id = 'vans' ref = {this.vans }>
- 能使用的时间与上面回调的相同
console.log(this.vans.current);
字符串(过时)
- 声明
<div id = 'vans' ref = 'vans'>
<h2 ref = 'h2'>{name}</h2>
- 使用
console.log(this.refs.vans,this.refs.h2);
react组件受控
就是说组件状态的变化是否受react接管
input 组件给他初始化value值时,这个input就被react掌控了。否则不受控
react基于回调的组件交流
两两
一个皇子(组件)若是想操作其兄弟(组件),须得经过他们的父皇(父组件)同意,给请命的皇子授予权柄,但是执法者还是皇上
成三
此时便要用到获取真实DOM的法门了。