vue3+element 表格单元格合并

//SKU合并列表数据

function objectSpanMethod({ row, column, rowIndex, columnIndex }:any){

let data = goodsList.value //拿到当前tatle 的数据

let cellValue = row[column.property]; //当前位置的值

let noSortArr = ['attr_string', 'goods_unit', 'goods_sum', 'sale_money', 'sum_shop_price', 'profit'] //不需要合并的字段(不进行合并行的prop)

if (cellValue && !noSortArr.includes(column.property)) {

let prevRow = data[rowIndex - 1]; //获取到上一条数据

let nextRow = data[rowIndex + 1]; //下一条数据

if (prevRow && prevRow[column.property] === cellValue) {

//当有上一条数据,并且和当前值相等时

return { rowspan: 0, colspan: 0 };

} else {

let countRowspan = 1;

while (nextRow && nextRow[column.property] === cellValue) {

//当有下一条数据并且和当前值相等时,获取新的下一条

nextRow = data[++countRowspan + rowIndex];

}

if (countRowspan > 1) {

return { rowspan: countRowspan, colspan: 1 };

}

}

}

}

相关推荐
ekskef_sef38 分钟前
32岁前端干了8年,是继续做前端开发,还是转其它工作
前端
sunshine6411 小时前
【CSS】实现tag选中对钩样式
前端·css·css3
真滴book理喻1 小时前
Vue(四)
前端·javascript·vue.js
蜜獾云1 小时前
npm淘宝镜像
前端·npm·node.js
dz88i81 小时前
修改npm镜像源
前端·npm·node.js
Jiaberrr2 小时前
解锁 GitBook 的奥秘:从入门到精通之旅
前端·gitbook
程序员_三木2 小时前
Three.js入门-Raycaster鼠标拾取详解与应用
开发语言·javascript·计算机外设·webgl·three.js
顾平安3 小时前
Promise/A+ 规范 - 中文版本
前端
聚名网3 小时前
域名和服务器是什么?域名和服务器是什么关系?
服务器·前端
桃园码工3 小时前
4-Gin HTML 模板渲染 --[Gin 框架入门精讲与实战案例]
前端·html·gin·模板渲染