el-table自定义合计

el-table中加入

//el-table中
show-summary
:summary-method ="getSummaries"

方法

//方法
getSummaries(param){
        const { columns, data } = param;
        const sums = [];
        columns.forEach((column, index) => {
     	//只找第一列放合计
        if (index === 0) {
            sums[index] = '合计';
            return;
        });
        //自定义列
        if(index == 3 || index == 5){
          const values = data.map((item) =>Number(item[column.property]));
          //如果el-table-column中没有prop属性,这里的column.property是undefined,所以判断一下values数组是否为空
          if (!values.every(value => isNaN(value))) {
            sums[index] = values.reduce((prev, curr) => {
              //将values中的每个值转换为number类型
              const value = Number(curr);
              if (!isNaN(value)) {
                return prev + curr;
              } else {
                return prev;
              }
            }, 0);
            sums[index] += '';
          } else {
            sums[index] = '';
          }
        }
       });
        return sums;
    }