5.受控组件和非受控组件

    受控组件,就是受我们控制,组件的状态全程由外部控制

    非受控组件,就是不受我们控制的组件,一般情况是在初始化的时候接受外部数据,然后自己在内部存储其自身的状态,当需要的时候,通过ref查DOM来查找当前的值

    大部分的时候推荐用受控组件来实现表单,因为在受控组件中,表单数据由React组件负责处理

    如果渲染非受控组件,控制能力比较弱,表单数据由DOM本身也就是form处理,但是更加方便快捷,代码量少

    特征 非受控组件 受控组件
    一次性取值 可以 可以
    提交时验证 可以 可以
    即时现场验证 不可以 可以
    有条件地禁用提交按钮 不可以 可以
    强制输入格式 不可以 可以
    一个数据的多个输入 不可以 可以
    动态输入 不可以