element table合并最后一行所有列

表格属性 show-summary展示合计行

arraySpanMethod合并合计行

<el-table
        ref="table"
        border
        show-summary
        :data="dataList"
        :summary-method="getSummaries"
        :span-method="arraySpanMethod"
        style="width: 100%"
      >
        <el-table-column align="center" prop="name" label="课程名称">
        </el-table-column>
        <el-table-column align="center" prop="prop1" label="所属分类">
        </el-table-column>
        <el-table-column align="center" prop="prop2" label="课程要求">
        </el-table-column>
        <el-table-column align="center" prop="prop3" label="开始学习时间">
        </el-table-column>
        <el-table-column prop="prop4" align="center" label="完成学习时间">
        </el-table-column>
        <el-table-column prop="fenzhi" align="center" label="成绩">
          <template slot-scope="scope">
            {{ scope.row.fenzhi || "/" }}
          </template>
        </el-table-column>
        <el-table-column align="center" prop="fenzhi" label="获得积分">
        </el-table-column>
      </el-table>
dataList: [
        { name: "123", id: "123213", fenzhi: "11" },
        { name: "123", id: "123213", fenzhi: "11" },
        { name: "123", id: "123213", fenzhi: "11" },
        { name: "123", id: "123213", fenzhi: "11" },
      ],
getSummaries(param) {
   //table自定义合计行方法summary-method
   const { columns, data } = param
    const sums = []
    columns.forEach((column, index) => {
      if (index === 0) {
        sums[index] = '总积分';
        return
      }
      if(index===6){
        const values = data.map(item => Number(item[column.property]))
        sums[1] = values.reduce((prev, curr) => {
          return prev + curr
        }, 0)
        sums[1]=sums[1]
      }

    })
    return sums
},
    arraySpanMethod() {
      //table合计行合并单元格
      setTimeout(() => {
        if (this.$refs.table.$el) {
          let current = this.$refs.table.$el
            .querySelector(".el-table__footer-wrapper")
            .querySelector(".el-table__footer");
          let cell = current.rows[0].cells;
          //cell[1].style.display = 'none'
          cell[1].colSpan = "9";
        }
      }, 50);
    },

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值