当前位置: 首页 > news >正文

Element表格之表头合并、单元格合并

一、合并表头

el-table配置 :header-cell-style="headFirst"headFirst({ row, colunm, rowIndex, columnIndex }) {let base = { 'background-color': 'rgba(67, 137, 249, 0.3)', color: '#333', 'text-align': 'center' };//这里为了是将第一列的表头隐藏,就形成了合并表头的效果if (rowIndex === 0) {// 判断对第几列合并  property就是prop传入的属性if (row[columnIndex].property === 'part1') {//第一列width扩展2倍return { ...base, width: '200%', display: 'inline-block' };} else if (row[columnIndex].property === 'part2') {//其余列设置font-size 0 隐藏return { 'font-size': 0 };}}return base;},

二、合并表格行

要进行单元格合并,关键在于你要对数据渲染的前进行判断处理,在这里,首先要在el-table中配置写入 :span-method='spanMethod'  ,然后在js部分写上方法。

spanMethod({ row, column, rowIndex, columnIndex }, key) {if (columnIndex === 0) {let data = [];data = this.dataMap[key].tableData;const _row = this.flitterData(data).arr[rowIndex];const _col = _row > 0 ? 1 : 0;return {rowspan: _row,colspan: _col,};}},flitterData(arr) {let spanOneArr = [];let concatOne = 0;arr.forEach((item, index) => {if (index === 0) {spanOneArr.push(1);} else {if (item && arr[index - 1] && item.name === arr[index - 1].name) {// 第一列需合并相同内容的判断条件spanOneArr[concatOne] += 1;spanOneArr.push(0);} else {spanOneArr.push(1);concatOne = index;}}});return {arr: spanOneArr,};},

一、合并表格列

如果合并表格行的同时还要考虑合并表格列可以修改spanMethod方法;

另外element的事件想要传输额外的参数 可以用 :spanMethod="(obj) => spanMethod(obj, key)" 设置多个列的单元格合并

spanMethod({ row, column, rowIndex, columnIndex }, key) {if (columnIndex === 0 || columnIndex === 1 || columnIndex === 2) {let data = [];data = this.dataMap[key].tableData;const _row = this.flitterData(data, column.property).arr[rowIndex];const _col = _row > 0 ? this.colData(data, row, columnIndex) : 0;return {rowspan: _row,colspan: _col,};}},colData(arr, row, columnIndex) {// 计算横向合并单元格if (columnIndex === 1 && row.part1 === row.part2) {return 2;} else if (columnIndex === 2 && row.part1 === row.part2) {return 0;}return 1;},flitterData(arr, key) {let spanOneArr = [];let concatOne = 0;arr.forEach((item, index) => {if (index === 0) {spanOneArr.push(1);} else {if (item && arr[index - 1] && item[key] === arr[index - 1][key]) {// 第一列需合并相同内容的判断条件spanOneArr[concatOne] += 1;spanOneArr.push(0);} else {spanOneArr.push(1);concatOne = index;}}});return {arr: spanOneArr,};},

相关文章:

Element表格之表头合并、单元格合并

一、合并表头 el-table配置 :header-cell-style"headFirst"headFirst({ row, colunm, rowIndex, columnIndex }) {let base { background-color: rgba(67, 137, 249, 0.3), color: #333, text-align: center };//这里为了是将第一列的表头隐藏,就形成了合…...

go学习-JS的encodeURIComponent转go

背景 encodeURIComponent() 函数通过将特定字符的每个实例替换成代表字符的 UTF-8 编码的一个、两个、三个或四个转义序列来编码 URI(只有由两个“代理”字符组成的字符会被编码为四个转义序列)。 与 encodeURI() 相比,此函数会编码更多的字…...

MySQL索引、事务与存储引擎

索引 事务 存储引擎 一、索引1.1 索引的概念1.2 索引的实现原理1.2 索引的作用1.3 创建索引的依据1.4 索引的分类和创建1.4.1 普通索引 index1.4.2 唯一索引 unique1.4.3 主键索引 primary key1.4.4 组合索引(单列索引与多列索引)1.4.5 全文索引 fulltex…...

【Spring面试】八、事务相关

文章目录 Q1、事务的四大特性是什么?Q2、Spring支持的事务管理类型有哪些?Spring事务实现方式有哪些?Q3、说一下Spring的事务传播行为Q4、说一下Spring的事务隔离Q5、Spring事务的实现原理Q6、Spring事务传播行为的实现原理是什么&#xff1f…...

Windows平台Qt6中UTF8与GBK文本编码互相转换、理解文本编码本质

快速答案 UTF8转GBK QString utf8_str"中UTF文"; std::string gbk_str(utf8_str.toLocal8Bit().data());GBK转UTF8 std::string gbk_str_given_by_somewhere"中GBK文"; QString utf8_strQString::fromLocal8Bit(gbk_str_given_by_somewhere.data());正文…...

【探索Linux】—— 强大的命令行工具 P.9(进程地址空间)

阅读导航 前言一、内存空间分布二、什么是进程地址空间1. 概念2. 进程地址空间的组成 三、进程地址空间的设计原理1. 基本原理2. 虚拟地址空间 概念 大小和范围 作用 虚拟地址空间的优点 3. 页表 四、为什么要有地址空间五、总结温馨提示 前言 前面我们讲了C语言的基础知识&am…...

ESP32主板-MoonESP32

产品简介 Moon-ESP32主板,一款以双核芯片ESP32-E为主芯片的主控板,支持WiFi和蓝牙双模通信,低功耗,板载LED指示灯,引出所有IO端口,并提供多个I2C端口、SPI端口、串行端口,方便连接,…...

Python 图片处理笔记

import numpy as np import cv2 import os import matplotlib.pyplot as plt# 去除黑边框 def remove_the_blackborder(image):image cv2.imread(image) #读取图片img cv2.medianBlur(image, 5) #中值滤波,去除黑色边际中可能含有的噪声干扰#medianBlur( Inp…...

SpringCloud Ribbon--负载均衡 原理及应用实例

😀前言 本篇博文是关于SpringCloud Ribbon的基本介绍,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力…...

Redis的介绍以及简单使用

Redis(Remote Dictionary Server)是一个开源的内存数据存储系统,它以键值对的形式将数据存在内存中,并提供灵活、高性能的数据访问方式。Redis具有高速读写能力和丰富的数据结构支持,可以广泛应用于缓存、消息队列、实…...

ad18学习笔记十二:如何把同属性的元器件全部高亮?

1、先选择需要修改的器件的其中一个。 2、右键find similar objects,然后在弹出的对话框中,将要修改的属性后的any改为same 3、像这样勾选的话,能把同属性的元器件选中,其他器件颜色不变 注意了,如果这个时候&#xff…...

SpringSecurity 核心过滤器——SecurityContextPersistenceFilter

文章目录 前言过滤器介绍用户信息的存储获取用户信息存储用户信息获取用户信息 处理逻辑总结 前言 SecurityContextHolder,这个是一个非常基础的对象,存储了当前应用的上下文SecurityContext,而在SecurityContext可以获取Authentication对象…...

反转单链表

思路图1: 代码: struct ListNode* reverseList(struct ListNode* head){if(headNULL)//当head是空链表时 {return head; }struct ListNode* n1NULL;struct ListNode* n2head;struct ListNode* n3head->next;if(head->nextNULL)//当链表只有一个节…...

加速新药问世,药企如何利用云+网的优势?

随着计算能力的不断提高和人工智能技术的迅速发展,药物研发领域正迎来一场革命。云端强大的智能算法正成为药物研发企业的得力助手,推动着药物的精确设计和固相筛选。这使得药物设计、固相筛选以及药物制剂开发的时间大幅缩短,有望加速新药物…...

C++中string对象之间比较、char*之间比较

#include <cstring> //char* 使用strcmp #include <string> //string 使用compare #include <iostream> using namespace std; int main() {string stringStr1 "42";string stringStr2 "42";string stringStr3 "213";cout …...

MVVM模式理解

链接&#xff1a; MVVM框架理解及其原理实现 - 知乎 (zhihu.com) 重点&#xff1a; 1.将展示的界面窗口和创建的构件是数据进行分离 2.利用一个中间商进行数据的处理&#xff0c;所有的数据通过中间商进行处理...

js常用的数组处理方法

some 方法 用于检查数组中是否至少有一个元素满足指定条件。如果有满足条件的元素&#xff0c;返回值为 true&#xff0c;否则返回 false。 const numbers [1, 2, 3, 4, 5];const hasEvenNumber numbers.some((number) > number % 2 0); console.log(hasEvenNumber); /…...

[Document]VectoreStoreToDocument开发

该document是用来检索文档的。 第一步&#xff1a;定义组件对象&#xff0c;该组件返回有两种类型&#xff1a;document和text。 第二步&#xff1a;获取需要的信息&#xff0c;向量存储库&#xff0c;这里我使用的是内存向量存储&#xff08;用该组件拿到文档&#xff0c;并检…...

【LeetCode-简单题】225. 用队列实现栈

文章目录 题目方法一&#xff1a;单个队列实现 题目 方法一&#xff1a;单个队列实现 入栈 和入队正常进行出栈的元素其实就是队列的尾部元素&#xff0c;所以直接将尾部元素弹出即可&#xff0c;其实就可以将除了最后一个元素的其他元素出队再加入队&#xff0c;然后弹出队首元…...

数据预处理方式合集

删除空行 #del all None value data_all.dropna(axis1, howall, inplaceTrue) 删除空列 #del all None value data_all.dropna(axis0, howall, inplaceTrue) 缺失值处理 观测缺失值 观测数据缺失值有一个比较好用的工具包——missingno&#xff0c;直接传入DataFrame&…...

【前端】jquery获取data-*的属性值

通过jquery获取下面data-id的值 <div id"getId" data-id"122" >获取id</div> 方法一&#xff1a;dataset()方法 //data-前缀属性可以在JS中通过dataset取值&#xff0c;更加方便 console.log(getId.dataset.id);//112//赋值 getId.dataset.…...

GB28181学习(五)——实时视音频点播(信令传输部分)

要求 实时视音频点播的SIP消息应通过本域或其他域的SIP服务器进行路由、转发&#xff0c;目标设备的实时视音频流宜通过本域的媒体服务器进行转发&#xff1b;采用INVITE方法实现会话连接&#xff0c;采用RTP/RTCP协议实现媒体传输&#xff1b;信令流程分为客户端主动发起和第…...

单例模式(饿汉模式 懒汉模式)与一些特殊类设计

文章目录 一、不能被拷贝的类 二、只能在堆上创建类对象 三、只能在栈上创建类对象 四、不能被继承的类 五、单例模式 5、1 什么是单例模式 5、2 什么是设计模式 5、3 单例模式的实现 5、3、1 饿汉模式 5、3、1 懒汉模式 &#x1f64b;‍♂️ 作者&#xff1a;Ggggggtm &#x…...

133. 克隆图

133. 克隆图 题目-中等难度示例1. bfs 题目-中等难度 给你无向 连通 图中一个节点的引用&#xff0c;请你返回该图的 深拷贝&#xff08;克隆&#xff09;。 图中的每个节点都包含它的值 val&#xff08;int&#xff09; 和其邻居的列表&#xff08;list[Node]&#xff09;。…...

交流耐压试验目的

试验目的 交流耐压试验是鉴定电力设备绝缘强度最有效和最直接的方法。 电力设备在运行中&#xff0c; 绝缘长期受着电场、 温度和机械振动的作用会逐渐发生劣化&#xff0c; 其中包括整体劣化和部分劣化&#xff0c;形成缺陷&#xff0c; 例如由于局部地方电场比较集中或者局部…...

使用 YCSB 和 PE 进行 HBase 性能压力测试

HBase主要性能压力测试有两个&#xff0c;一个是 HBase 自带的 PE&#xff0c;另一个是 YCSB&#xff0c;先简单说一个两者的区别。PE 是 HBase 自带的工具&#xff0c;开箱即用&#xff0c;使用起来非常简单&#xff0c;但是 PE 只能按单个线程统计压测结果&#xff0c;不能汇…...

正则表达式相关概念及不可见高度页面的获取

12.正则 概念:匹配有规律的字符串,匹配上则正确 1.正则的创建方式 构造函数创建 // 修饰符 igm// i 忽视 ignore// g global 全球 全局// m 换行 var regnew RegExp("匹配的内容","修饰符")var str "this is a Box";var reg new RegExp(&qu…...

深入学习 Redis - 分布式锁底层实现原理,以及实际应用

目录 一、Redis 分布式锁 1.1、什么是分布式锁 1.2、分布式锁的基础实现 1.2.1、引入场景 1.2.2、基础实现思想 1.2.3、引入 setnx 1.3、引入过期时间 1.4、引入校验 id 1.5、引入 lua 脚本 1.5.1、引入 lua 脚本的原因 1.5.2、lua 脚本介绍 1.6、过期时间续约问题&…...

Hive行转列[一行拆分成多行/一列拆分成多列]

场景&#xff1a; hive有张表armmttxn_tmp&#xff0c;其中有一个字段lot_number&#xff0c;该字段以逗号分隔开多个值&#xff0c;每个值又以冒号来分割料号和数量&#xff0c;如&#xff1a;A3220089:-40,A3220090:-40,A3220091:-40,A3220083:-40,A3220087:-40,A3220086:-4…...

TypeScript系列之类型 string

文章の目录 背景写在最后 背景 与JavaScript不同的是&#xff0c;TypeScript使用的是静态类型&#xff0c;比如说它指定了变量可以保存的数据类型。如下面代码所示&#xff0c;如果在JavaScript中&#xff0c;指定变量可以保存的数据类型&#xff0c;会报错&#xff1a;类型注…...

武进网站建设价格/技术教程优化搜索引擎整站

有时候数组要转为对象操作&#xff0c;用对象的指向操作符&#xff0c;有两种方法 方法一&#xff1a; $arr[a>10,b>100,c>Hello];$obj(Object)$arr;echo output:.$obj->c;方法二&#xff1a;$arr[a>10,b>100,c>Hello];$arr0 json_encode($arr);$arr1 j…...

四川专业旅游网站制作/线上销售平台都有哪些

如果培训机构已经向法院申请了破产清算宣布倒闭&#xff0c;学员或家长们该如何维权呢&#xff1f; 培训机构向法院申请破产后&#xff0c;消费者可以在法院规定的期限内向法院申报债权&#xff0c;并依照法定清偿顺序参与分配。 根据《中华人民共和国企业破产法》第一百一十…...

wordpress 产品视频上传/app 推广

修改鼠标滚轮方向&配置MacBook触控板的多指快捷操作背景&#xff1a;问题描述&#xff1a;解决办法&#xff1a;参考链接&#xff1a;软件下载&#xff1a;几点经验&#xff1a;背景&#xff1a; 从 macOS 转到 windows 系统最不适应的就是鼠标的滚轮方向&#xff0c;用久了…...

贵州省网站建设/上海最新新闻事件今天国内

LM3S之boot loader学习笔记-1 彭会锋 &#xff08;首先声明&#xff0c;此系列文章编写参考了很多资料&#xff0c;其中一些内容是原版内容的引用和整理&#xff0c;并加入了一些自己的见解&#xff0c;我已经尽量标明引用部分&#xff0c;如有未全部标注部分&#xff0c;还望见…...

优质的设计网站有哪些/微信软文推广怎么做

上节说了说求导&#xff0c;这节就顺带着说一说求积分&#xff0c;凑个完整。不定积分&#xff1a;定积分的代码和极限求导都差不多&#xff1a;syms x f;f(3-x^2)^3;ans1int(f,x)pretty(ans1)不详细解释了&#xff0c;我们主要是看看这个int(f,x)函数&#xff1a;在不定积分中…...

网站及数据库怎么做后门/国外网站推广平台有哪些

【链接】http://acm.hdu.edu.cn/showproblem.php?pid6109 【题意】 在这里写题意【题解】 要处理的关系越多,肯定就越容易错.->单调性.根据这个二分出每组数据的最后一个是什么就好.二分判断这样:先处理出哪些数据是一样的,并在一起;并查集然后再处理不一样的,看看不一样的…...