elementUI 表格中如何合并动态数据的单元格

news2024/10/6 16:27:08

elementUI 表格中如何合并动态数据的单元格

ui中提供的案例是固定写法无法满足 实际开发需求

下面进行改造如下 准备数据如下

//在表格中 设置单元格的方法  :span-method="spanMethodFun"
<el-table :data="tableData" border  :span-method="spanMethodFun">
//...
</el-table>

//表格数据  这里的数据是动态获取的
let tableData = ref([{no:1,id:1},{no:1,id:1},{no:1,id:1},{no:1,id:2}])
//定义数组 用来临时存储 需要合并的列数 和行数
let spanArr:any = []
//下标 用来设置临时存储数据的
let pos:any = 0
//获取 需要合并数据的 方法
function getSpaArr(){
//循环表格数据
	for(let i=0;i<tableData.value.length;i++){
		if(i == 0){//如何是第一个数据  表示只有一个相同的数据索引设置为0
			spanArr.push(1)
			pos = 0
		}else{
			if(tableData.value[i].id == tableData.value[i - 1].id){ //这里用id判断的 也可以用相同的名字 或者其他都可以判断值
				// 如果数据相同 第一列加1  其他 设置为0
				spanArr[pos] += 1
				spanArr.push(0)
			}else{
				// 不相同 重新开始判断
				spanArr.push(1)
				pos = i
			}
		}
	}
}
//调用方法 获取临时合并数据
getSpaArr()
//查看临时合并的数据
console.log(spanArr,'spanArr');// 得到数据如下:[3, 0, 0, 1] 'spanArr'

//这里调用合并单元格事件 row当前行的值,column当前列的值,rowIndex行的下标,columnIndex列的下标
const spanMethodFun = ({ row, column, rowIndex, columnIndex, }: any) => {
	// console.log(row,column,rowIndex,columnIndex);
	//如何临时合并数据存在执行
	if(spanArr.length > 0){
	//这里设置第几行需要合并数据
		if (columnIndex == 1 || columnIndex == 6) {//第几列数据
			return { 
				rowspan: spanArr[rowIndex], //需要合并的行数 通过行下表 获取临时存储值
				colspan: spanArr[rowIndex]>0?1:0, //需要合并的列数 0代表不合并 1 合并成一列
			}
		}
	}
}

效果如下 第2行 和最后一行进行了合并 其他没有合并
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1433735.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

私有化部署一个吃豆人小游戏

目录 效果 安装步骤 1.安装并启动httpd 2.下载代码 3.启动httpd 使用 效果 安装步骤 1.安装并启动httpd yum -y install httpd 2.下载代码 进入目录 cd /var/www/html/ 下载 git clone https://gitee.com/WangZhe168_admin/pacman-canvas.git 3.启动httpd syste…

docker更换镜像源

添加的镜像源 {"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com", "https://reg-mirror.qiniu.com/", "https://docker.mirrors.ustc.edu.cn"] }docker更换镜像源之后一定要重启守卫 systemctl daemon-reloaddock…

网络原理TCP/IP(5)

文章目录 IP协议IP协议报头地址管理网段划分特殊的IP地址路由选择以太网认识MAC地址对比理解MAC地址和IP地址DNS&#xff08;域名服务器&#xff09; IP协议 IP协议主要完成的工作是两方面&#xff1a; 地址管理&#xff0c;使用一套地址体系&#xff0c;来描述互联网上每个设…

响应式开发如何设置断点,小屏幕界面该如何显示(有动图)

Hi&#xff0c;我是贝格前端工场&#xff0c;本期分享响应式开发&#xff0c;如何设置屏幕断点&#xff0c;pc页面布局到了移动端之后该如何布局的问题&#xff0c;微软也提供了设置屏幕断点的动图演示&#xff0c;非常直观。 一、什么是响应式开发&#xff0c;为何要设置屏幕断…

问题:0xc8前面加(byte) #人工智能#学习方法的原因是因为0xc8大于??????????? 。 #微信#其他#微信

问题&#xff1a;0xc8前面加&#xff08;byte&#xff09;的原因是因为0xc8大于??????????? 。 参考答案如图所示

【Linux】信号-下

欢迎来到Cefler的博客&#x1f601; &#x1f54c;博客主页&#xff1a;折纸花满衣 &#x1f3e0;个人专栏&#xff1a;题目解析 &#x1f30e;推荐文章&#xff1a;【LeetCode】winter vacation training 目录 &#x1f449;&#x1f3fb;信号递达&#xff0c;信号未决&#x…

【MySQL】DQL的总结和案例学习

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-VWRkWqFrRMi4uLRa {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

华为自动驾驶干不过特斯拉?

文 | AUTO芯球 作者 | 李诞 什么&#xff1f; 华为的智能驾驶方案干不过蔚小理&#xff1f; 特斯拉的智能驾驶[FSD]要甩中国车企几条街&#xff1f; 这华为问界阿维塔刚刚推送“全国都能开”的城区“无图 NCA” 就有黑子来喷了 这是跪久了站不起来了吧 作为玩车14年&…

知识图谱概论

知识图谱 1 学习目标2 知识图谱概念2.1 什么是知识图谱2.2 语义网络2.3 知识图谱的定义 3 知识图谱的架构3.1 知识图谱的逻辑结构3.2 知识图谱的体系架构 4 知识图谱的关键技术4.1 信息抽取4.2 知识融合4.3 知识加工4.4 知识图谱存储4.5 知识更新 5 知识图谱的典型应用5.1 智能…

基于Bazel实现C++/Python编译

最近在学Baidu Apollo需要用到Bazel进行编译&#xff0c;在此记录下Bazel的学过程&#xff0c;以及遇到的一些问题和心得。另外强烈推荐B站赵虚左老师的Cyber RT课程&#xff0c;里面对Bazel的使用有详细的教学。 下面的使用过程都是在Ubuntu 22.04上进行的&#xff0c;首先需要…

Cassandra 命令大全

文章目录 1. 连接与基本操作2. 数据库管理3. 表&#xff08;Column Family&#xff09;操作4. 集群管理5. 权限管理6. 其他高级功能7. 条件查询与聚合操作8. 索引管理9. 用户权限和角色管理10. 安全性相关设置11. 一致性级别控制12. 用户定义类型 (UDTs)13. 用户定义函数 (UDFs…

2024年【天津市安全员C证】考试报名及天津市安全员C证免费试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年天津市安全员C证考试报名为正在备考天津市安全员C证操作证的学员准备的理论考试专题&#xff0c;每个月更新的天津市安全员C证免费试题祝您顺利通过天津市安全员C证考试。 1、【多选题】下列说法正确的是&#…

ChatGPT生产力|chat gpt实战介绍

标注说| ⭐ : 使用稳定&#xff0c;推荐 | &#x1f604; : 免费使用 | &#x1f511; : 需要登陆或密码 | ✈️ : 需waiwang进行访问 | ChatGPT 1PoePoe - Fast, Helpful ...&#x1f511;&#x1f604;&#x1f517;2 AItianhuGPT4&#x1f604;⭐&#x1f517;3 PhantoNa…

Vue ElementUI中el-table表格嵌套样式问题

一、表格嵌套要求&#xff1a; 两个表格嵌套&#xff0c;当父表格有children数组时子表格才展示&#xff1b;子表格数据少于父表格展示字段&#xff0c;且对应固定操作列不同&#xff1b; 二、嵌套问题&#xff1a; 当使用el-table的typeexpand实现表格嵌套时&#xff0c;样…

ChatGPT Plus如何升级?信用卡付款失败怎么办?如何使用信用卡升级 ChatGPT Plus?

ChatGPT Plus是OpenAI提供的一种高级服务&#xff0c;它相较于标准版本&#xff0c;提供了更快的响应速度、更强大的功能&#xff0c;并且用户可以优先体验到新推出的功能。 尽管许多用户愿意支付 20 美元的月费来订阅 GPT-4&#xff0c;但在实际支付过程中&#xff0c;特别是…

(2)(2.13) Rockblock Satellite Modem

文章目录 前言 1 支持的MAVLink命令信息 2 设置 3 使用方法 4 数据成本 5 参数 前言 &#xff01;Note 该功能仅适用于 ArduPilot 4.4 或更高版本&#xff0c;并且要求飞行控制器支持 LUA 脚本(LUA Scripts)。 RockBLOCK 卫星调制解调器可实现与 ArduPilot 飞行器的全球…

【MySQL】- 09 Select Count

【MySQL】- 09 Select Count 1认识COUNT2 COUNT(列名)、COUNT(常量)和COUNT(*)之间的区别3 COUNT(*)的优化 4 COUNT(*)和COUNT(1)5 COUNT(字段)总结 数据库查询相信很多人都不陌生&#xff0c;所有经常有人调侃程序员就是CRUD专员&#xff0c;这所谓的CRUD指的就是数据库的增删…

[python] 过年燃放烟花

目录 新年祝福语 一、作品展示 二、作品所用资源 三、代码与资源说明 四、代码库 五、完整代码 六、总结 新年祝福语 岁月总是悄然流转&#xff0c;让人感叹时间的飞逝&#xff0c;转眼间又快到了中国传统的新年&#xff08;龙年&#xff09;。 回首过去&#xf…

VMWare下载安装(包含Window是和Mac)

VMWare下载安装&#xff08;包含Window是和Mac&#xff09; 文章目录 VMWare下载安装&#xff08;包含Window是和Mac&#xff09;一、windows下载VMWare①&#xff1a;下载01&#xff1a;网盘下载02&#xff1a;官方下载 ②&#xff1a;安装③&#xff1a;密钥 二、Mac下载VMWa…

2.3作业

作业要求&#xff1a; 程序代码&#xff1a; #include<stdlib.h> #include<string.h> #include<stdio.h> typedef struct node //定义链表节点结构体&#xff1a;数据域、指针域 {int data;struct node *next; }*linklist;linklist create_node()//创建新节…