elementui el-table用span-method方法对相同的列名或行名进行合并

看到的一篇文章

同理

如果对第二列进行合并的话copy一下第一个方法,让值赋给第二个数组就可以

java 复制代码
 // 合并方法
    mergeCells({ row, column , rowIndex, columnIndex }) {
      debugger;
      if (columnIndex === 1) {
        const _row = this.spanArr[rowIndex];
        const _col = _row > 0 ? 1 : 0;
        console.log(_col, '_col');
        return {
          rowspan: _row, //行
          colspan: _col //列
        };
      }else if (columnIndex ===2){
        const _row = this.spanSecondArr[rowIndex];
        const _col = _row > 0 ? 1 : 0;
        console.log(_col, '_col');
        return {
          rowspan: _row, //行
          colspan: _col //列
        };
      }
    },
    getSpanFirstArr(data) {
      this.spanArr = [];
      for (var i = 0; i < data.length; i++) {
        if (i === 0) {
          this.spanArr.push(1);
          this.pos = 0;
        } else {
          // 判断当前元素与上一个元素是否相同
          if (data[i].orgName === data[i - 1].orgName && data[i].orgName) {
            this.spanArr[this.pos] += 1;
            this.spanArr.push(0);
          } else {
            this.spanArr.push(1);
            this.pos = i;
          }
        }
      }
    },
    // 对类型的合并
    getSpanSecondArr(data) {
      this.spanSecondArr = [];
      for (var i = 0; i < data.length; i++) {
        if (i === 0) {
          this.spanSecondArr.push(1);
          this.pos = 0;
        } else {
          // 判断当前元素与上一个元素是否相同
          if (data[i].wgareaType === data[i - 1].wgareaType && data[i].wgareaType) {
            this.spanSecondArr[this.pos] += 1;
            this.spanSecondArr.push(0);
          } else {
            this.spanSecondArr.push(1);
            this.pos = i;
          }
        }
      }
    },```
相关推荐
我命由我1234523 分钟前
微信小程序 - 自定义实现分页功能
前端·微信小程序·小程序·前端框架·html·html5·js
程序员黄同学1 小时前
请谈谈 Vue 中的 key 属性的重要性,如何确保列表项的唯一标识?
前端·javascript·vue.js
繁依Fanyi1 小时前
巧妙实现右键菜单功能,提升用户操作体验
开发语言·前端·javascript·vue.js·uni-app·harmonyos
前端御书房1 小时前
前端防重复请求终极方案:从Loading地狱到精准拦截的架构升级
前端·javascript
web182854825121 小时前
nginx 部署前端vue项目
前端·vue.js·nginx
zy0101011 小时前
HTML标签
前端·css·html
程序员黄同学1 小时前
解释 Vue 中的虚拟 DOM,如何通过 Diff 算法最小化真实 DOM 更新次数?
开发语言·前端·javascript
蓝谷芮济2 小时前
二:前端发送POST请求,后端获取数据
前端
果粒chenl2 小时前
css+js提问
前端·javascript·css
memorycx2 小时前
Vue02
前端·javascript·vue.js