vue - element table 根据相同id合并单元格


 //设置单元格
        setrowspans() {
            // 先给所有的数据都加一个v.rowspan = 1
            this.list.forEach((item) => {
                item.rowspan = 1;
            });
            // 双层循环
            for (let i = 0; i < this.list.length; i++) {
                // 内层循环,上面已经给所有的行都加了item.rowspan = 1
                // 这里进行判断
                // 如果当前行的cid和下一行的cid相等
                // 就把当前item.rowspan + 1
                // 下一行的item.rowspan - 1
                for (let j = i + 1; j < this.list.length; j++) {
                    //此处可根据相同字段进行合并,此处是根据的id
                    if (this.list[i].cid === this.list[j].cid) {
                        this.list[i].rowspan++;
                        this.list[j].rowspan--;
                    }
                }
                // 这里跳过已经重复的数据
                i = i + this.list[i].rowspan - 1;
            }
        },
//合并单元格
        objectSpanMethod({ row, column, rowIndex, columnIndex }) {
//第一列
            if (columnIndex === 0) {
                return {
                    rowspan: row.rowspan,
                    colspan: 1,
                };
            }
//第二列
            if (columnIndex === 1) {
                return {
                    rowspan: row.rowspan,
                    colspan: 1,
                };
            }
        },


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM