问题描述:前端使用的是vue的moment组件格式化时间,之前使用的是:
{
"data": 'triggerTime',
"width": '16%',
"render": function (data, type, row) {
return data ? moment(new Date(data)).format("YYYY-MM-DD HH:mm:ss") : "";
}
}
这样的方式一直没有问题,后来用safari浏览器查看时时间都变成了Invalid Date。
分析问题:
后台打印:Wed Apr 22 21:30:00 CST 2020
console.log: 1587562200000
页面显示:2020-04-22 21:30:00
后台打印:Thu Apr 23 10:35:00 CST 2020
console.log:2020-04-23T02:35:00.000+0000
页面显示:Invalid date
通过对比可以看出后台返回的数据格式变了,调用new Date(data)时,时间被格式成Thu Apr 23 2020 12:10:00 GMT+0800 (中国标准时间)标准时间。
解决问题:去掉new Date()解决
{
"data": 'triggerTime',
"width":'20%',
"render": function ( data, type, row ) {
return data?moment(data).format("YYYY-MM-DD HH:mm:ss"):"";
}
}