React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?

背景

突然发现 antd 的 getFieldsValue()是可以传一个 true 参数的,如题,React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?

验证

确实不一样
React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?_第1张图片
React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?_第2张图片

结论

getFieldsValue 提供了多种重载方法:

getFieldsValue(nameList?: true | NamePath[], filterFunc?: FilterFunc)
当不提供 nameList 时,返回所有注册字段,这也包含 List 下所有的值(即便 List 下没有绑定 Item)。

当 nameList 为 true 时,返回 store 中所有的值,包含未注册字段。例如通过 setFieldsValue 设置了不存在的 Item 的值,也可以通过 true 全部获取。

当 nameList 为数组时,返回规定路径的值。需要注意的是,nameList 为嵌套数组。例如你需要某路径值应该如下:
React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?_第3张图片

你可能感兴趣的:(react.js,前端,前端框架)