element-plus表格中的formatter时间格式化

我们请求回来的数据格式为 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: 则是这个数据的下标值

猜你喜欢

转载自blog.csdn.net/m0_63873004/article/details/124140624