項目需求需要使用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>