最近在写项目中因为用的是 Ant Design Pro中的日期选择器(DatePicker),它给我的数据格式是Dayjs向接口传输也没有问题,但是回显的时候问题就来了,接口返回的如:2023-04-27但是呢,它这个组件并不识别,会报错搞了半天才发现,要的格式不一样。
Dayjs官网:Node.js · Day.js
想要扩展一下的可以看看,不想的话直接安装:
npm install dayjs
最关键的来了:引入
import dayjs from 'dayjs'; import customParseFormat from 'dayjsugin/customParseFormat';
声明转换格式:
const dateFormat = 'YYYY/MM/DD';
接口返回别的格式的话,可以参考:
然后是在代码里面的显示:
//这里我的编辑和添加是一体的所以加一个三元,为1代表添加 {datatime === 1 ? ( <DatePicker showTime //birth是接口返回的数据(看清楚了不是births) onChange={births} onOk={onOkss} defaultValue={null} format={dateFormat} /> ) : ( <DatePicker showTime onChange={births} onOk={onOkss} defaultValue={dayjs(birth, dateFormat)} format={dateFormat} /> )}
效果: