vue+element表格的合计方法

第一种是直接使用show-summary

将show-summary设置为true就会在表格尾部展示合计行。默认情况下,对于合计行,第一列不进行数据求合操作,而是显示「合计」二字(可通过sum-text配置),其余列会将本列所有数值进行求合操作,并显示出来。缺点是将所有列的数字信息都统计出来,包括你不需要的。如下:
在这里插入图片描述

第二种是使用summary-method并传入一个方法

在这里插入图片描述

使用summary-method并传入一个方法,返回一个数组,这个数组中的各项就会显示在合计行的各列中

  1. 写入 : :summary-method=“getSummaries”
    和 show-summary
  2. 方法
 getSummaries(param) {
      const { columns, data } = param;
      const sums = [];
      columns.forEach((column, index) => {
        if (index === 0) {
          sums[index] = "合计"; //第一列显示合计
          return;
        } else if (index > 2) { //我需要在第三列开始统计
          const values = this.summary.map((item) => //this.summary 需要显示的合计数组
            Number(item[column.property])
          );
          if (!values.every((value) => isNaN(value))) {
            sums[index] = values.reduce((prev, curr) => {
              const value = Number(curr);
              if (!isNaN(value)) {
                return prev + curr;
              } else {
                return prev;
              }
            }, 0);
            sums[index] += "";
          } else {
            sums[index] = "--";  //第三列之后没有没有可以统计的换成--填充
          }
        }
      });

      return sums;
    },
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值