首页 > 建站教程 > 前端框架 >  antd Datepicker组件报date.clone is not a function的错误正文

antd Datepicker组件报date.clone is not a function的错误

我爱模板网在开发基于react antd框架的项目时,日期回显报了
date.clone is not a function

截图如下:



组件代码:
<Form.Item
  label="预计成交时间"
  name="transactionTime"
>
  <DatePicker
    style={{ width: '100%' }}
    format="YYYY-MM-DD"
    placeholder="请选择预计成交时间"
    allowClear
  />
</Form.Item>
返回的字段值截图:



一开始,用了自己的方法将日期转换成字符串格式:
2021-09-15

发现还是报这个错,只能百度了:日期在 Datepicker 中回显,默认值有三种方式:defaultValue、value、initValue,要求的参数格式为 moment。因此在数据回显时,一般都需要将日期转换成 moment 格式。

日期格式还得是moment,于是:

1、引入moment
import moment from 'moment';
2、对接口返回的日期进行处理:
if(res.data.transactionTime) {
    res.data.transactionTime = moment(res.data.transactionTime);
}
再次请求,发现正常了。