项目需求需要使用ant-design-pro的弹出框表单并在表单出现时设置默认值
然而按照官方的示例给 <Input> 标签设置 defaultValue 时发现并没有效果。如下所示:
<FormItem labelCol={{ span: 5 }} wrapperCol={{ span: 15 }} label="项目名称">
{form.getFieldDecorator('ProjectName', {
rules: [{ required: true, message: 'Please input projectname' }],
})(<Input placeholder="项目名称" defaultValue="123" />)}
</FormItem>
找了半天bug后发现是form.getFieldDecorator方法调用时Input标签的默认值设置方式发生改变。正确设置方式如下:
<FormItem labelCol={{ span: 5 }} wrapperCol={{ span: 15 }} label="项目名称">
{form.getFieldDecorator('ProjectName', {
initialValue: '123',
rules: [{ required: true, message: 'Please input projectname' }],
})(<Input placeholder="项目名称" />)}
</FormItem>