愿将你葬此,三生成牵挂。
组件
- 组件是对数据和方法的简单封装。
组件规则
- props 的只读性,组件无论是使用函数声明还是通过 class 声明,都绝不能修改自身的 props,自身的 props 都是来源于父亲
- state 是可变的(setState()),组件内部的值要发生变化,可以把这个值初始化为 state,通过 this.setState()改变值
- 组件内部可以使用 state,组件与组件之间只能使用 props
React 类组件
1 | import React from 'react'; |
函数式组件
- class 组件可以转换成函数式组件
1 | import React from 'react'; |
受控组件
表单元素的 value 属性,value 的值为 this.state.value
在 React 中,可变状态(mutable state) 通常保存在 state 属性中,并且只能通过使用 setState()来更新,使得 React 的 state 成为唯一的数据源。
imput 的 value 的属性的值就是输入框的值,在构造器中设定初始值 value,把 this.state.value 赋值给 input 的 value 属性
渲染表单的 React 组件还控制着用户输入过程中表单发生的操作,被 React 以这种方式控制取得的表单输入元素就叫做 ‘受控组件’。
非受控组件
1 | <input type="file" /> |
- 没有 value 的值,无法控制其值
- 受控不受控,取决于表单有没有有 value 属性的值,没有非受控组件,有了并且值为初始化的为受控组件。