React中的表单组件分为:约束性组件和无约束性组件两种;
无约束性组件:
定义:表单元素的行为和React组件的行为不一致,即表单元素不完全受React控制;
缺点:由于表单元素的内容b并不一由state控制,所以比要让React组件重新渲染比较麻烦;
访问无约束性组件的方法:利用ref属性;
特征:表单内常含有defaultValue或者defaultChecked来设置默认值;
eg:<input type="text" defaultValue="A"/>
约束性组件:
定义:表单元素可由React组件控制,即表单元素的输入值可由state控制;
优点:1,更好的控制表单内容;
2,对表单的内容的操作性更好;
3,可以更新组件的内容;
eg:<input type="text" value={this,state.name} />
注意:通常约束性组件都会用change事件来更新组件内容;