当前位置:网站首页>table 组件指定列合并行方法
table 组件指定列合并行方法
2022-07-02 06:22:00 【秦时明月之安康】
大多数table组件只提供了一个合并行或者合并列的抽象方法,例如 element ui 组件,
该方法的参数解释及其用法如下,
看得出来,rowspan代表每一行数据实际占用的行数,colspan代表每一行数据实际占用的列数,我们可以基于原始数据封装如下方法,
export const getSpanMethodData = (data = [], columns = [ ]) => {
let mergeColumns = {
} // 用来记住合并列时数据的索引和重复的次数
let pos = {
} // 用来记录需要合并的列每次出现重复时,重复的次数
columns.forEach(p => {
mergeColumns[p] = []
pos[p] = 0
})
for (let i = 0; i < data.length; i++) {
if (i === 0) {
columns.forEach(p => {
mergeColumns[p].push(1)
pos[p] = 0
})
} else {
columns.forEach((p, index) => {
let obj = {
curr: '',
prev: '',
}
for (let j = 0; j <= index; j++) {
obj.curr += JSON.stringify(data[i][columns[j]])
obj.prev += JSON.stringify(data[i - 1][columns[j]])
}
if (obj.curr === obj.prev) {
mergeColumns[p][pos[p]] += 1
mergeColumns[p].push(0)
} else {
mergeColumns[p].push(1)
pos[p] = i
}
})
}
}
return mergeColumns
}
当执行span-method方法的时候,就可以这样写,
handleSpan ({
row, column, rowIndex, columnIndex, }) {
if (columnIndex === 0) {
const _row = this.table.spanArr[column.key][rowIndex]
const _col = _row > 0 ? 1 : 0
return {
rowspan: _row,
colspan: _col,
}
}
},
边栏推荐
猜你喜欢

Redis - cluster data distribution algorithm & hash slot

Latex 编译报错 I found no \bibstyle & \bibdata & \citation command

Summary of advertisement business bug replay

Win10:添加或者删除开机启动项,在开机启动项中添加在用户自定义的启动文件

TensorRT的数据格式定义详解

实习生跑路留了一个大坑,搞出2个线上问题,我被坑惨了

一口气说出 6 种实现延时消息的方案

蚂蚁集团g6初探

Sentinel 阿里开源流量防护组件

Redis——Cluster数据分布算法&哈希槽
随机推荐
Hydration failed because the initial UI does not match what was rendered on the server. One of the reasons for the problem
Redis - big key problem
Eggjs -typeorm 之 TreeEntity 实战
Shardingsphere JDBC
20201025 Visual Studio2019 QT5.14 信号和槽功能的使用
实习生跑路留了一个大坑,搞出2个线上问题,我被坑惨了
automation - Jenkins pipline 执行 nodejs 命令时,提示 node: command not found
代码技巧——Controller参数注解@RequestParam
AWD学习
sprintf_s的使用方法
Dynamic global memory allocation and operation in CUDA
一口气说出 6 种实现延时消息的方案
qq邮箱接收不到jenkins构建后使用email extension 发送的邮件(timestamp 或 auth.......)
js中正则表达式的使用
Three suggestions for all students who have graduated and will graduate
Win10网络图标消失,网络图标变成灰色,打开网络设置闪退等问题解决
Latex 报错 LaTeX Error: The font size command \normalsize is not defined问题解决
20210306转载如何使TextEdit有背景图片
PgSQL学习笔记
重载全局和成员new/delete