在 antd design React 中使用 DatePicker 和 Form FormItem

Seu*_*Lee 7 reactjs antd

    <FormItem {...formItemLayout} label="Publish Date">
      {getFieldDecorator('publishDate', {
        initialValue: '',
        rules: [
          {
            required: false,
            message: 'Please input publishDate',
            whitespace: true,
          },
        ],
      })(<DatePicker onChange={onChange} />)}
    </FormItem>
Run Code Online (Sandbox Code Playgroud)

不起作用。我收到异步验证器说“publishDate 不是字符串”。

所以我用这种方式作为临时解决方案。

<FormItem {...formItemLayout} label="Publish Date">
  {getFieldDecorator('publishDate', {
    initialValue: getCurrentDate(),
    rules: [
      {
        required: false,
        message: 'Please input publishDate',
        whitespace: true,
      },
    ],
  })}
  <DatePicker onChange={onChange} />
</FormItem>
Run Code Online (Sandbox Code Playgroud)

有什么帮助吗?提前致谢!

cod*_*aff 5

应该type: 'object'在规则中使用

<FormItem {...formItemLayout} label="Publish Date">
  {getFieldDecorator('publishDate', {
    initialValue: moment(),
    rules: [
      {
        type: 'object',
        required: false,
        message: 'Please input publishDate',
        whitespace: true,
      },
    ],
  })(<DatePicker/>)}
</FormItem>
Run Code Online (Sandbox Code Playgroud)

另外,您不需要onChange处理程序。