新建一个js文件
export default {
dateFormat(date, fmt = 'YYYY-mm-dd') {
if(date == null){
return ''
}
if('number' == typeof date || 'string' == typeof date){
date = new Date(date * 1)
}
let ret;
const opt = {
"Y+": date.getFullYear().toString(), // 年
"m+": (date.getMonth() + 1).toString(), // 月
"d+": date.getDate().toString(), // 日
"H+": date.getHours().toString(), // 时
"M+": date.getMinutes().toString(), // 分
"S+": date.getSeconds().toString() // 秒
// 有其他格式化字符需求可以继续添加,必须转化成字符串
};
for (let k in opt) {
ret = new RegExp("(" + k + ")").exec(fmt);
if (ret) {
fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
};
};
return fmt;
}
}
然后在vue页面中引用
import dateUtils from '@/utils/date.js'
转换
getPayroll.getWorkerPayrollList(this.queryCondition)
.then(res => {
this.stateAuditData = []
res.data.rows.forEach(item => {
item.settlementCycleFrom = dateUtils.dateFormat(item.settlementCycleFrom)
item.settlementCycleEnd = dateUtils.dateFormat(item.settlementCycleEnd)
item.entryTime = dateUtils.dateFormat(item.entryTime)
item.exitTime = dateUtils.dateFormat(item.exitTime)
this.stateAuditData.push(item)
});
this.total = res.data.total
})
在el-table中显示
<el-table
:data="stateAuditData"
border
size="mini"
style="width: 100%">
<el-table-column align=center prop="exitTime" label="退场时间" width="120" />
</<el-table>
不过我个人更倾向用过滤器
<el-table-column label="有效期" width="200">
<template slot-scope="scope">
{{Number(scope.row.validityDateForm) | moment('YYYY-MM-DD')}}~{{Number(scope.row.validityDateTo) | moment('YYYY-MM-DD')}}
</template>
</el-table-column>