Ant Design Vue Table 组件合并单元格

项目开发中,有时候需要实现单元格合并的需求,这里记录一下在Ant Design Vue的实现。

<template><div><a-table bordered :data-source="dataSource" :columns="columns"></a-table></div>
</template>
<script>
const dataSource = [{ key: '1', school: '林州一中', grade: '高一', class: '二班', name: '徐强' },{ key: '2', school: '林州一中', grade: '高一', class: '一班', name: '林东'},{ key: '3', school: '林州一中', grade: '高一', class: '二班', name: '李丹'},{ key: '4', school: '林州一中', grade: '高二', class: '二班', name: '刘康'},{ key: '5', school: '实验高中', grade: '高三', class: '二班', name: '杨江'},{ key: '6', school: '实验高中', grade: '高三', class: '一班', name: '陈锋'},{ key: '7', school: '实验高中', grade: '高三', class: '二班', name: '李华'},{ key: '8', school: '实验高中', grade: '高四', class: '二班', name: '赵铭'}
]const columns = [{title: '学校', dataIndex: 'school', width: '25%',scopedSlots: { customRender: 'school' }, align: 'center', key: 'school',customRender (_, row) {return {children: row.school,attrs: {rowSpan: row.schoolRowSpan}}}},{title: '年级', dataIndex: 'grade', width: '25%',scopedSlots: { customRender: 'grade' }, align: 'center', key: 'grade',customRender (_, row) {return {children: row.grade,attrs: {rowSpan: row.gradeRowSpan}}}},{title: '班级', dataIndex: 'class', width: '25%',scopedSlots: { customRender: 'class' }, align: 'center'},{title: '姓名', dataIndex: 'name', width: '25%',scopedSlots: { customRender: 'name' }, align: 'center'}
]export default {name: 'TableMerge',data () {return {dataSource,columns}},methods: {// 合并单元格rowSpan (key, data) {const arr = data.reduce((result, item) => {if (result.indexOf(item[key]) < 0) {result.push(item[key])}return result}, []).reduce((result, keys) => {const children = data.filter(item => item[key] === keys)result = result.concat(children.map((item, index) => ({...item,[`${key}RowSpan`]: index === 0 ? children.length : 0})))return result}, [])return arr},// 表格合并mergeRowCell (data) {let tableData = this.rowSpan('school', data)tableData = this.rowSpan('grade', tableData)this.dataSource = tableData}},mounted () {this.mergeRowCell(this.dataSource)}
}
</script>

合并前

合并第一列

合并第二列

Ant Design Vue Table 组件合并单元格相关推荐

  1. html table 合并单元格 分页,element table组件合并单元格

    合并单元格,如果situation 一致,则合并 getSpanArr(data)方法 data就是我们从后台拿到的数据,通常是一个数组:spanArr是一个空的数组,用于存放每一行记录的合并数:po ...

  2. react ,ant Design UI中table组件合并单元格并展开详情的问题

    需求:购物车订单列表,如图: 一:单元格合并 遇到这种你会怎么办呢?  单元格合并?  还是其他的方法? 下面是我的处理方式,就是在table 组件的columns上处理,这里拿商品举例,其余的类似, ...

  3. vue3 antd table表格样式修改——ant design vue table表格的行高调整

    vue3 antd项目实战--修改ant design vue table组件的默认样式(调整每行行高) 知识调用 场景复现 实际操作 解决a-table表格padding过宽 知识调用 文章中可能会 ...

  4. ant design vue table表格组件实现隔行变色

    ant design vue table表格组件实现隔行变色 一.使用方法 html代码: <a-table:columns="patient":data-source=&q ...

  5. ant design vue table分页

    ant design vue table分页设置 1.设置pagination <a-table :columns="columns" :dataSource="d ...

  6. vue el-table的合并单元格与拆分单元格

    vue el-table的合并单元格与拆分单元格 methods: {objectSpanMethod({ row, column, rowIndex, columnIndex }) {const f ...

  7. ant design vue table 高度自适应_Vue组件库大评测 Element, iView, HeyUI, Ant Design Vue

    今天偶然的机会想了解下其他Vue相关的组件库,网上刚好有文章,顺便自己做一下笔记,算是资源整理吧 .好了,话不多说,直接开始: 组件库的选择对于前端开发有者至关重要的影响,而组件的丰富性以及健壮性是我 ...

  8. Ant table表格合并单元格使用

    Ant 合并单元格+覆盖样式 项目需求: 最后一列用来展示详情,表格左侧点击行切换:要求选中行的样式和详情信息用一个边框凸显出来 结果如下: 切换效果展示如下: 实现过程: 在ant合并单元格demo ...

  9. HTML5 table表格合并单元格和合并边框

    原文地址和代码: 原文地址 转载请备注 代码: <!DOCTYPE html> <html lang="en"> <head><meta ...

最新文章

  1. 基于K8S构建企业级Jenkins CI/CD平台实战(三) 之 带你实战Spring boot/Cloud 项目 CI/CD jenkins自动化构建、部署过程
  2. LCA(树上倍增 || rmqlca||)
  3. 【LeetCode】13. Roman to Integer
  4. 二叉搜索时与双向链表python_剑指Offer(二十六) 二叉搜索树和双向链表
  5. java 识别手机_java – 如何识别手机闲置?
  6. leetcode: 451. Sort Characters By Frequency
  7. python3 re模块_python3+ 模块学习 之 re
  8. 实验5 —— 编写、调试具有多个段的程序
  9. echo字符集 shell_Shell echo命令:输出字符串
  10. 使用Eclipse编写Processing小程序
  11. java构造函数注释_@Autowired的使用:推荐对构造函数进行注释
  12. ArcGIS之栅格地图配准
  13. python中集合用什么符号表示_Python 集合set添加删除、交集、并集、集合操作符号...
  14. 一文带你轻松了解什么是 LSL, LSR, ASL, ASR, ROL, ROR?
  15. 十二个“一”的演义小故事
  16. 图片转PDF怎么转换?快学习这三种免费转换方法!
  17. Bat脚本多开微信分析
  18. java IO流基础 万字详解(从拷贝文件到模拟上传头像)
  19. 《Cocos Creator游戏实战》旋转循环页视图实现
  20. 外企就很舒服?聊聊我在外企的工作体验

热门文章

  1. 大学英语六级词汇(笔记)
  2. Golang基础教程——字符串常用方法总结
  3. Leetcode-SQL学习计划-SQL入门-584:寻找用户推荐人
  4. 什么是前端宏任务,什么又是前端微任务呢?一文读懂前端微任务宏任务。
  5. 十大战略工具(1)——波士顿矩阵
  6. xss 全编码两次_XSS平台简单使用
  7. Andrew Ng-机器学习基础笔记(下)-Python实现代码
  8. Python 题之“大小写字母互换”
  9. 从标数法求最短路径数到杨辉三角的思考
  10. CCF-CSP 202112-3 登机牌条码 100分