受控组件和非受控组件

受控组件

在HTML 中,类似 <input>, <textarea> 和 <select> 这样的表单元素会维护自身的状态,并基于用户的输入来更新,当用户提交表单时,

前面提到的元素的值将随表单一起被发送,但在 React 中会有些不同,包含表单元素的组件将会在 state 中追踪输入的值,并且每次调用回调函数时

如 onChange 会更新 state,重新渲染组件,一个输入表单元素,它的值通过 React 的这种方式来控制,这样的元素就被称为”受控元素”

在受控组件中,组件渲染出的状态与它的value或checked prop相对应

非受控组件

  • 如果一个表单组件没有value prop就可以称为非受控组件

  • 非受控组件是一种反模式,它的值不受组件自身的state或props控制

  • 通常需要为其添加ref prop来访问渲染后的底层DOM元素


受控组件和非受控组件
https://blog.fullsize.cn/2020/12/08/notion/shou-kong-zu-jian-he-fei-shou-kong-zu-jian/
作者
fullsize
发布于
2020年12月8日
许可协议