Ant设计表单的区别.setFieldsValue和initialValues道具



如标题所示。两者的区别是什么?

1。

import { Form } from 'antd';
const Components = () => {
const [form] = Form.useForm();
form.setFieldsValue({ ... });
return (
<Form form={form}>
...
</Form>
);
}
  • import { Form } from 'antd';
    const Components = () => {
    return (
    <Form initialValues={{ ... }}>
    ...
    </Form>
    );
    }
    

    setFieldValues适合按需设定值。例如,如果有"Default"按钮,将所有值设置回默认值。在表单上使用setFieldValues的问题是,如果你正在传递props向下更改或函数prop, setFieldValues将在应用程序中的props刷新时一遍又一遍地被调用。这可能导致表单随机重置为setFieldValues中的值,而用户有表单。

    initialvalue只在表单初始化时设置初始值,而不存在如上所述的相同问题,因此它非常适合设置具有初始值的表单,同时具有可能刷新或更改的道具。这将使您的表单运行良好,并且在表单被销毁之前不会对用户进行更改。

    最新更新