element-ui 合并表格,选不同页的时候,格式混乱 爬坑

问题:合并表格,刚打开默认页数的时候,格式没有问题,但是点击另外一页,格式就出现了问题。
解决:在选择分页和页显示数字中,把spanArr和position重置。

一、合并表格代码:

template中:在table中增加 :span-method=“objectSpanMethod”
script中:

 getSpanArr (data) {
     
      data.forEach((item, index) => {
     
        if (index === 0) {
     
          this.spanArr.push(1);
          this.position = 0;
        } else {
     
          //在 data[index].maintainId 换成自己要比较数据
          if (data[index].maintainId === data[index - 1].maintainId) {
     
            this.spanArr[this.position] += 1;
            this.spanArr.push(0);
          } else {
     
            this.spanArr.push(1);
            this.position = index;
          }
        }
      })
    },
    // 纵向合并
    objectSpanMethod ({
      row, column, rowIndex, columnIndex }) {
     
      //选要合并的列数
      if (columnIndex === 1) {
     
        const _row = this.spanArr[rowIndex];
        const _col = _row > 0 ? 1 : 0;
        return {
     
          rowspan: _row,
          colspan: _col
        }
      }
    },

二、解决格式混乱问题:

    //页显示条数
	handleSizeChange (val) {
     
      this.pageSize = val;
      this.fetchData(this.pageNum, this.pageSize);
      this.spanArr = []  //重置
      this.position = 0  //重置
    },
    //当前页
    handleCurrentChange (val) {
     
      this.pageNum = val;
      this.fetchData(this.pageNum, this.pageSize);
      this.spanArr = []
      this.position = 0
    },

你可能感兴趣的:(前端,前端)