受控组件
什么是受控组件?
其值由React控制的输入表单元素称为“受控组件”。
受控组件有两个特点:1. 设置value值,value由state控制,2. value值一般在onChange事件中通过setState进行修改
什么时候使用受控组件?
需要对组件的value值进行修改时,使用受控组件。比如:页面中有一个按钮,每点击一次按钮受控组件的值加1.
非受控组件
什么是非受控组件?
表单数据由 DOM 处理的组件非受控组件。
非受控组件有两个特点:1. 不设置value值,2. 通过ref获取dom节点然后再取value值
<input type="text" placeholder="请输入姓名" name='username' ref={(input) => this.usernameElem = input}/>
取值方法:this.usernameElem.value
什么时候使用非受控组件?
任何时候都不需要改变组件的value值,这时候可以使用非受控组件。