(vue)el-table 怎么把表格列中相同的数据 合并为一行

(vue)el-table 怎么把表格列中相同的数据 合并为一行


效果:


文档解释:

写法:

c 复制代码
<el-table
  :data="tableData"
  size="mini"
  class="table-class"
  border
  style="width:100%"
  max-height="760"
  :span-method="objectSpanMethod"
>


// 合并table单元格
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
  if (columnIndex === 1) {  //定位到维度列
    // 获取当前单元格的值
    const currentValue = row[column.property];
    // 获取上一行相同列的值
    const preRow = this.tableData[rowIndex - 1];
    const preValue = preRow ? preRow[column.property] : null;
    // 如果当前值和上一行的值相同,则将当前单元格隐藏
    if (currentValue === preValue) {
      return { rowspan: 0, colspan: 0 };
    } else {
      // 否则计算当前单元格应该跨越多少行
      let rowspan = 1;
      for (let i = rowIndex + 1; i < this.tableData.length; i++) {
        const nextRow = this.tableData[i];
        const nextValue = nextRow[column.property];
        if (nextValue === currentValue) {
          rowspan++;
        } else {
          break;
        }
      }
      return { rowspan, colspan: 1 };
    }
  }
},

解决参考:https://blog.csdn.net/qq_42174597/article/details/130602030

相关推荐
用户479492835691528 分钟前
JavaScript 的 NaN !== NaN 之谜:从 CPU 指令到 IEEE 754 标准的完整解密
前端·javascript
ss27341 分钟前
Springboot + vue 医院管理系统
vue.js·spring boot·后端
醉方休1 小时前
Web3.js 全面解析
前端·javascript·electron
前端开发爱好者2 小时前
前端新玩具:Vike 发布!
前端·javascript
今天也是爱大大的一天吖2 小时前
vue2中的.native修饰符和$listeners组件属性
前端·javascript·vue.js
fxshy2 小时前
在 Vue 3 + Vite 项目中使用 Less 实现自适应布局:VW 和 VH 的应用
前端·javascript·less
奇舞精选2 小时前
AI时代的前端知识拾遗:前端事件循环机制详解(基于 WHATWG 最新规范)
前端·javascript
AI3D_WebEngineer2 小时前
企业级业务平台项目设计、架构、业务全解之组件库篇
前端·javascript·vue
浪裡遊3 小时前
Next.js路由系统
开发语言·前端·javascript·react.js·node.js·js
STUPID MAN3 小时前
Linux使用tomcat发布vue打包的dist或html
linux·vue.js·tomcat·html