我们请求回来的数据格式为?2021-07-02T14:19:59+08:00,然而想在表格中以“YYYY-mm-dd HH:MM:SS”形式展示,这时候就需要使用formatter
<el-table-column label="开始时间" align="center" prop="startTime" width="180" :formatter="timeFormatter"/>
timeFormatter(row, column, cellValue, index) {
let format = 'YYYY-mm-dd HH:MM:SS'
let date = new Date(cellValue);
const dataItem = {
'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(),
};
Object.keys(dataItem).forEach((item) => {
const ret = new RegExp(`(${item})`).exec(format);
if (ret) {
format = format.replace(ret[1], ret[1].length === 1 ? dataItem[item] : dataItem[item].padStart(ret[1].length, '0'));
}
});
return format
}
formatter方法一共有四个参数:row, column, cellValue, index
row: 很容易知道,则是这一行的所有数据
column: 则是关于这个列的数据
cellValue: 则是这个单元格里的值
index: 则是这个数据的下标值
|