el-table合计行前置在首行,自定义合计行方法

背景

el-table原生合计行是在标签内增加show-summary属性,在表尾实现设计合计,且只对表格当前页面显示的列数据进行合计。element-UI效果如下图所示。
在这里插入图片描述
现要求在首行显示合计行,并自定义合计逻辑实现如下效果。
在这里插入图片描述
图示表格中,成本、收入、利润可以由列累加得;而利润率不能简单的直接累加,否则会出现利润率越来越高的情况,不符合生活常识和实际情况,因此该列的合计逻辑依然是【利润率 = 利润/收入】

前端

show-summary显示合计,:summary-method声明使用自定义合计方法。

<el-table v-loading="loading" :data="costList" border:header-cell-style="{backgroundColor: '#DFEBF8'}"show-summary:summary-method = "getSummaryMethod""><el-table-column……/><el-table-column……/><el-table-column……/><el-table-column……/><el-table-column……/></el-table>                          
  1. 合计行位置放到首行
methods:{    /** 合计行设置 */showSummariesPosition () {// 合计行显示在表头let table = document.querySelector('.el-table')let footer = document.querySelector('.el-table__footer-wrapper')let body = document.querySelector('.el-table__body-wrapper')table.removeChild(footer)table.insertBefore(footer, body)},}
  1. 定义合计逻辑方法
  data() {return {costList:[],	//接收后端数据}},created() {this.getSummaryMethod();},methods: {/** 自定义合计逻辑 */getSummaryMethod(params) {const { columns, data } = params;const sums = [];  //累加和const totalValue = [];  //存储列表,封装合计行要显示的数据columns.forEach((column, index) => {		//参数(列,列下标)sums [index] =0;	//累加和,初始化为0var i;if (index === 0) {	//第一列显示“合计”字样totalValue[index] = "合计";return;}if (index === 1) {  //第二列----总成本for (i = 0; i < this.costList.length; i++){	//循环累加sums[index] = this.costList[i].totalCost+sums[index];	};totalValue[index] = (sums[index]/10000).toFixed(2) + '万元';//格式化,保留两位小数//把累加和写入合计行列表return ;}if (index === 2) {   //第三列----总产值for (i = 0; i < this.costList.length; i++) {sums[index] = this.costList[i].totalOutput+sums[index];}totalValue[index] = (sums[index]/10000).toFixed(2) + '万元';return ;}if (index === 3) {    //第四列----利润sums[3] = sums[2]-sums[1];totalValue[index] = (sums[3]/10000).toFixed(2) + '万元';return ;}if (index === 4) {    //第五列----利润率 = 利润/收入totalValue[index] = (sums[3]/sums[2]*100).toFixed(2) + '%';return ;}});return totalValue;	//返回合计行列表},
}

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

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

相关文章

【渗透测试】DC-1靶机实战(上)漏洞扫描获取反弹shell

目录 一、范围界定 二、信息收集 三、目标识别 1&#xff09;主机发现 2&#xff09;端口扫描 四. 服务枚举 1&#xff09;网站首页 2&#xff09;Web指纹识别 3&#xff09;nikto报告 4&#xff09;robots.txt 5&#xff09;UPGRADE.txt 五. 漏洞映射 1&#xff…

万字长文|OpenAI模型规范(全文)

本文是继《OpenAI模型规范概览》之后对OpenAI Model Spec的详细描述&#xff0c;希望能对各位从事大模型及RLHF研究的朋友有帮助。万字长文&#xff0c;建议收藏后阅读。 一、概述 在AI的世界里&#xff0c;确保技术的行为符合我们的期望至关重要。OpenAI最近发布了一份名为Mo…

java里面封装https请求工具类2

其他写法 https://blog.csdn.net/weixin_44372802/article/details/132620809?spm1001.2014.3001.5501 encodeJson 是请求参数的密文格式&#xff08;大公司都是要对请求参数加密的&#xff09; ResponseBean 是自己或者对方定义的返回内容参数 public ResponseBean sendByEnc…

今天是放假带娃的一天

端午节放假第一天 早上5点半宝宝就咔咔乱叫了&#xff0c;几乎每天都这个点醒&#xff0c;准时的很&#xff0c;估计他是个勤奋的娃吧&#xff0c;要早起锻炼婴语&#xff0c;哈哈 醒来后做饭、洗锅、洗宝宝的衣服、给他吃D3&#xff0c;喂200ml奶粉、给他洗澡、哄睡&#xff0…

代码随想录算法训练营第二十二天

题目&#xff1a;216. 组合总和 III 这道题和上道题非常类似&#xff0c;大体框架一样只不过修改一下终止条件而已 值得注意的是其中的剪枝条件的设置 一是靠现有的元素和已经大于目标和的话就提前终止&#xff0c;另一个是其中循环那个剪枝可以记住 i < n - (k - path.s…

YOLOv8改进 | 卷积模块 | 在主干网络中添加/替换蛇形卷积Dynamic Snake Convolution

&#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 蛇形动态卷积是一种新型的卷积操作&#xff0c;旨在提高对细长和弯曲的管状结构的特征提取能力。它通过自适应地调整卷积核的权重&#xff0…

【每日刷题】Day59

【每日刷题】Day59 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 1103. 分糖果 II - 力扣&#xff08;LeetCode&#xff09; 2. 1051. 高度检查器 - 力扣&#xff08…

电子纸在日化行业的全新应用

电子纸在日化行业的全新应用 项目背景 在一日化龙头企业他们的洗衣粉产线在AGV小车取料到运输到产品包装工序时&#xff0c;因为取料粉车无明显区分标识&#xff0c;但是产品系列有十大类。在未采用晨控电子纸之前现场采用一个转盘分为十个区域&#xff0c;取料工序上方会有一…

Stream与MLC测试CPU内存DDR5的原理与方法详解

在高性能计算和服务器领域&#xff0c;内存性能是决定整体系统性能的关键因素之一&#xff0c;特别是随着DDR5内存的普及&#xff0c;其更高的带宽和更低的延迟特性使得内存性能测试变得更加重要。本文将详细介绍使用Stream和MLC两种工具对CPU内存DDR5进行性能测试的原理和实施…

我也想拥有一个漂亮的网站

我也想拥有一个漂亮的网站 别人的公司几乎每个都有好看的网站&#xff0c;我也想拥有 如今在互联网上网站的存在已经非常的不稀奇了&#xff0c;可以在各大搜索引擎上面查到大量的网站&#xff0c;各行各业的网站都有&#xff0c;千奇百态&#xff0c;什么风格的网站都有…

整理好了!2024年最常见 20 道分布式、微服务面试题(四)

上一篇地址&#xff1a;整理好了&#xff01;2024年最常见 20 道分布式、微服务面试题&#xff08;三&#xff09;-CSDN博客 七、单体应用与微服务架构有何不同&#xff1f; 单体应用&#xff08;Monolithic Application&#xff09;和微服务架构&#xff08;Microservices A…

Transformer 内部原理学习

Transformer 内部原理 想象一下&#xff0c;Transformer 是一个超级智能的团队&#xff0c;每个成员&#xff08;模块&#xff09;都有特定的职责&#xff0c;共同完成一个复杂的任务&#xff0c;比如理解一篇文章或翻译一句话。下面&#xff0c;我们逐步拆解这个团队的工作流…

自动化喷涂生产线方案四

上一篇文章讲了单工作站的自动化喷涂生产线方案&#xff0c;主要是单柜集成的方式&#xff0c;本章介绍在单柜基础上进行扩展&#xff0c;增加一个180kg负载的搬运机械臂&#xff0c;同时配合三台单柜实现多工作站同时喷涂作业的生产线方案。 单工作站可以实现单个机械臂的喷涂…

JDK8安装详细教程教程-windows

&#x1f4d6;JDK8安装详细教程教程-windows ✅1. 下载✅2. 安装 ✅1. 下载 123云盘下载地址&#xff1a; JDK8 | JDK11 | JDK17 官方Oracle地址&#xff1a;https://www.oracle.com/java/technologies/downloads/archive/ ✅2. 安装 运行jdk-8u211-windows-x64.exe安装包文…

WebAPI AOP方式 异常方式 FilterAttribute、ActionFilterAttribute

》》 自定义异常处理特性 using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web; using System.Web.Http.Filters;namespace WebApplication11 {/// <summary>/// 异常处理特性/// </sum…

278 基于Matlab GUI的中重频PD雷达仿真系统

基于Matlab GUI的中重频PD雷达仿真系统。具有26页文档报告。仿真雷达信号的发射、传播、散射、接收、滤波、信号处理、数据处理的全部物理过程&#xff0c;因此应当实现对雷达发射机、天线、接收机、回波信号处理、数据处理的建模与仿真。程序已调通&#xff0c;可直接运行。 2…

使用OpenPCDet训练与测试Transformer模型:如何加载自己的数据集

引言 Transformer架构因其强大的序列处理能力和长距离依赖捕捉能力&#xff0c;在自然语言处理领域取得了巨大成功。近年来&#xff0c;这一架构也被引入3D物体检测领域&#xff0c;如Voxel Transformer等&#xff0c;显著提升了模型在复杂场景下的检测性能。OpenPCDet整合了多…

How To: Localize Bar and Ribbon Skin Items

您可以使用Localizer对象自定义皮肤菜单&#xff0c;而不是迭代每个条形皮肤子菜单项和功能区皮肤库项容器来手动修改这些项。此方法允许您同时自定义所有现有栏子菜单和功能区库中的外观项目。 创建BarLocalizer类的派生类并重写XtraLocalizer.GetLocalizedString方法。 pub…

深入解析MongoDB中的锁机制

目录 一、MongoDB简介 二、MongoDB锁机制 三、锁的实践影响 3.1 高并发写入导致的写锁案例 一、MongoDB简介 MongoDB 作为一种非关系型文档数据库&#xff0c;在现代应用中扮演着极其重要的角色&#xff0c;尤其在处理大规模、高并发、灵活数据模型的场景下。MongoDB 具有如…

【STM32】µC/OS-III多任务程序

【STM32】C/OS-III多任务程序 一、探究目的二、探究原理2.1 嵌入式操作系统2.1.1 RTOS2.1.2 前后台系统2.1.2 C/OS-III 三、探究过程&#xff08;实验一&#xff09;3.1 μC/OS-III环境配置3.1.1 CubeMX配置3.1.2 下载μC/OS-III源码3.1.3 KEIL环境配置3.1.4 KEIL代码更改3.1.5…