el-table-column合并单元格

这篇博客介绍了如何在Vue项目中实现el-table组件的行合并功能。通过`span-method`属性结合自定义方法`objectSpanMethod`,动态计算表格单元格的`rowspan`和`colspan`。同时,`rowspan`方法用于处理合并逻辑,根据数据的某一列(如'name')进行判断合并。在数据加载后,调用`rowspan`方法处理显示数据,实现了高效的表格展示效果。
摘要由CSDN通过智能技术生成

1、在el-table上写:span-method="objectSpanMethod"

1、methods中写方法

objectSpanMethod({ row, rowIndex, columnIndex }) {
      //  console.log(row);
      this.row11 =row
       const _row = this.spandata[rowIndex]
       const _col = _row > 0 ? 1 : 0
       if (columnIndex === 0) {
           return {
            rowspan: _row,
            colspan: _col
           }
       }
    },

以及方法

rowspan(list , prop) {
      var spanArr = []
      var position = 0
      list.forEach((item, index) => {
       if (index === 0) {
            spanArr.push(1)
           position = 0
       } else {
         if (list[index][prop] === list[index - 1][prop]) {
              spanArr[position] += 1 //有相同项
               spanArr.push(0) // 名称相同后往数组里面加一项0
             } else {
               spanArr.push(1) //同列的前后两行单元格不相同
               position = index
            }
                }
            })
            return spanArr
        }, 

3、每一页请求回来数据后,将要显示的数据 调用如上2方法

this.spandata =  this.rowspan(response.data , 'name')

输入第一个值是返回数据res.data   第二个是要哪一列合并

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值