react中的ref
react中的ref和vue的ref都是可以获得组件或者DOM实例,然后可以外部调用组件组件
react的ref两种使用方式
- 回调函数
- string形式
1.回调函数的三种触发方式
- 组件渲染后
- 组件卸载后
- ref改变后
1 import React,{Component} from 'react' 2 export default class UserAdd extends Component{ 3 constructor(){ 4 super(); 5 } 6 handleSubmit=()=>{ 7 let name=this.name.value; 8 console.log(name); 9 } 10 render(){ 11 return( 12 <form onSubmit={this.handleSubmit}> 13 <div className="from-group"> 14 <label htmlFor="name">姓名</label> 15 <input type="text" className="form-control" ref={ref=>this.name=ref}/> 16 </div> 17 <div className="from-group"> 18 <input type="submit" className="btn btn-primary"/> 19 </div> 20 </form> 21 ) 22 } 23 24 }
2.string形式,使用的时候用this.refs.string
1 import React,{Component} from 'react' 2 export default class UserAdd extends Component{ 3 constructor(){ 4 super(); 5 } 6 handleSubmit=()=>{ 7 let name=this.refs.name.value; 8 console.log(name); 9 } 10 render(){ 11 return( 12 <form onSubmit={this.handleSubmit}> 13 <div className="from-group"> 14 <label htmlFor="name">姓名</label> 15 <input type="text" className="form-control" ref="name"/> 16 </div> 17 <div className="from-group"> 18 <input type="submit" className="btn btn-primary"/> 19 </div> 20 </form> 21 ) 22 } 23 24 }
zhumiao