使用element 表格进行动态合并单元格

 

步骤分三步:

1、获取数据

2、拿到list之后使用方法去遍历条件相同的值 (判断条件自定义) 

3、合并行,可多行添加

 

_____

定义

spanArr: [ ]

position: 0

_____

 

:这里是拿到数据遍历相同的值

 rowspan() {
     this.tableData.forEach((item, index) => {
       if (index === 0) {
         this.spanArr.push(1);
         this.position = 0;
       } else {
      //这里是判断的条件
if ((this.tableData[index].name === this.tableData[index - 1].name) && (this.tableData[index].channel === this.tableData[index - 1].channel)) { this.spanArr[this.position] += 1; this.spanArr.push(0); } else { this.spanArr.push(1); this.position = index; } } });   }

 

:合并行,可多行添加

 

//这里使用element 官方方法
spanMethod({ rowIndex, columnIndex }) {
        //表格合并行
        if (columnIndex === 1) {
          const _row = this.spanArr[rowIndex];
          const _col = _row > 0 ? 1 : 0;
          return {
            rowspan: _row,
            colspan: _col
          };
        }
        if (columnIndex === 2) {
          const _row = this.spanArr[rowIndex];
          const _col = _row > 0 ? 1 : 0;
          return {
            rowspan: _row,
            colspan: _col
          };
        }
        if (columnIndex === 3) {
          const _row = this.spanArr[rowIndex];
          const _col = _row > 0 ? 1 : 0;
          return {
            rowspan: _row,
            colspan: _col
          };
        }
        if (columnIndex === 14) {
          const _row = this.spanArr[rowIndex];
          const _col = _row > 0 ? 1 : 0;
          return {
            rowspan: _row,
            colspan: _col
          };
        }
      }

 

posted @ 2020-12-08 11:18  king_94boy  阅读(538)  评论(0编辑  收藏  举报