重置蚂蚁设计表单上的特定输入字段

时间:2021-01-25 11:11:03

标签: reactjs forms antd

如何重置特定的输入字段,在本例中为标题输入字段? 我知道如何重置所有字段(使用 form.resetFields())但不知道 ant design 中的特定字段

 <Form.Item name='Title' label='Title'>
                  <Input value={title} onChange={handleChange('title')} />
                </Form.Item>
<Form.Item name='Category' label='Category'>
                  <Select
                    placeholder='Select a category'
                    style={{ width: 420 }}
                    onChange={handleCategoryChange}
                  >
                    {categories.length > 0 &&
                      categories.map((c) => (
                        <Option key={c._id} value={c._id}>
                          {c.name}
                        </Option>
                      ))}
                  </Select>
                </Form.Item>


  const handleCategoryChange = (e) => {
    ///reset Title field
  };```


1 个答案:

答案 0 :(得分:1)

您没有显示整个表单,但由于您使用的是 form.resetFields(),我假设您在表单标签中指定了一些 initialValues。让我们说你有类似的东西

const initValues = {
    Title: "Foo",
    Category: 123,
    ...
}

<Form
    initialValues={initvalues}
    ...
/>

form.resetFields() 的作用是将所有字段值设置回它们的 initialValues。那么,您想要的只是将 title 字段重置为其初始值。

这可以通过

const handleCategoryChange = (e) => {
    form.setFieldsValue( { Title: initValues.Title } )
}