注:React提供的这个ref属性,表示为对组件真正实例的引用,其实就是ReactDOM.render()返回的组件实例,可以这样理解:id=input
1.获取input的值
handleSubmit = () => {
console.log(this.refs.input.value) //方法一
console.log(this.inputdata .value) //方法二
}
render () {
return (
<div>
//方法一
<input
type='text'
ref='input' defaultValue="Hello" />
<button type='submit' onClick={this.handleSubmit}>Submit</button>
//方法二
<input
type='text'
ref={(val) => this.inputdata = val} defaultValue="Hello" />
</div>
)
}
2.监听input
//可以做搜索帮助,但是要学会节流操作,进行优化功能
changeData=(e)=>{//input输入什么,就监听这个方法,然后再修改state,然后返回到视图
this.setState({
inval:e.target.value
})
}
render () {
return (
<div>
<input type="text" onChange={(e)=>this.changeData(e)} />
<h3>改变:{inval}</h3>
</div>
)
}
网友评论