React-11 表单

139 阅读1分钟

分类

  • 受控组件
  • 非受控组件

受控组件

  • 值存储在state中,只能通过setState来修改
  • 常见受控组件:Input、Testarea、Select
  • 适合复杂交互
  • 好处:组件可马上回应输入内容的改变,如validation

非受控组件

  • 存在外部实现,React无法完全控制
  • 如:上传文件
  • 好处:代码简单
this.state = { 
  name: ""
};

--> 

<input type="text" value={this.state.name} onChange={this.handleNameChange}>

-->

handleNameChange = (event) => {
  this.setState({
    name: event.target.value
  })
}
ElementNew value in callback
input type="text"event.tartget.value
input type="checkbox"event.tartget.checked
input type="radio"event.tartget.checked
textareaevent.tartget.value
selctevent.tartget.value