VUE3中Element table表头动态展示合计信息(不是表尾合计)
一、背景
原型上需要对两个字段动态合计,输出摘要信息
原先想到是的Element的 :summary-method,发现不是动态,所以换监听来实现
二、vue代码
<el-table v-model="loading" :data="itemList"><el-table-column label="药品名称" prop="drugName" fixed min-width="100px" :show-overflow-tooltip="true"/><el-table-column label="规格" prop="drugSpec" :show-overflow-tooltip="true"/><el-table-column label="批号" prop="batchNo" :show-overflow-tooltip="true"/><el-table-column label="账面数" prop="batchStockDesc" min-width="90px"/><el-table-column label="盘存数" align="center"><el-table-column prop="stocktakeQty" min-width="150px"><template v-slot="scope"><el-input-number :disabled="!canEdit"v-model="scope.row.stocktakeQty":min="0"controls-position="right"size="small"/></template></el-table-column><el-table-column label="单位" prop="unit" min-width="90px"><template #default="scope"><dict-tag :options="bd_plat_drug_unit" :value="scope.row.unit" :showValue="false"/></template></el-table-column><el-table-column prop="stocktakeTinyqty" min-width="150px"><template v-slot="scope"><el-input-number :disabled="!canEdit"v-model="scope.row.stocktakeTinyqty":min="0"controls-position="right"size="small"/></template></el-table-column><el-table-column label="小单位" prop="tinyUnit" min-width="90px"><template #default="scope"><dict-tag :options="bd_plat_drug_unit" :value="scope.row.tinyUnit" :showValue="false"/></template></el-table-column></el-table-column><el-table-column label="零售" align="center"><el-table-column label="零售价" prop="retailPrice" min-width="100px" :show-overflow-tooltip="true"align="right"/><el-table-column label="盘前金额" prop="totalRetail" min-width="100px" :show-overflow-tooltip="true"align="right"/><el-table-column label="盘后金额" prop="afterTotalRetail" min-width="100px" :show-overflow-tooltip="true"align="right"><template v-slot="scope">{{scope.row.afterTotalRetail = computeTotalMoney(scope.row.stocktakeQty, scope.row.stocktakeTinyqty, scope.row.packageQty, scope.row.retailPrice)}}</template></el-table-column><el-table-column label="成本损溢金额" prop="totalLossoverRetail" min-width="120px" align="right"><template v-slot="scope">{{scope.row.totalLossoverRetail = computeDifferenceMoney(scope.row.stocktakeQty, scope.row.stocktakeTinyqty, scope.row.packageQty, scope.row.retailPrice, scope.row.totalRetail)}}</template></el-table-column></el-table-column><el-table-column label="成本" align="center"><el-table-column label="采购价" prop="purchasePrice" min-width="100px" :show-overflow-tooltip="true"align="right"/><el-table-column label="盘前金额" prop="totalPurchase" min-width="100px" :show-overflow-tooltip="true"align="right"/><el-table-column label="盘后金额" prop="afterTotalPurchase" min-width="100px" :show-overflow-tooltip="true"align="right"><template v-slot="scope">{{scope.row.afterTotalPurchase = computeTotalMoney(scope.row.stocktakeQty, scope.row.stocktakeTinyqty, scope.row.packageQty, scope.row.purchasePrice)}}</template></el-table-column><el-table-column label="成本损溢金额" prop="totalLossoverPurchase" min-width="120px":show-overflow-tooltip="true" align="right"><template v-slot="scope">{{scope.row.totalLossoverPurchase = computeDifferenceMoney(scope.row.stocktakeQty, scope.row.stocktakeTinyqty, scope.row.packageQty, scope.row.purchasePrice, scope.row.totalPurchase)}}</template></el-table-column></el-table-column><el-table-column label="生产企业" prop="firmName" min-width="80px" :show-overflow-tooltip="true"/><el-table-column label="产地" prop="producerName" min-width="80px" :show-overflow-tooltip="true"/><el-table-column label="库位码" prop="locationCode" min-width="100px" :show-overflow-tooltip="true"/><el-table-column label="操作" fixed="right" min-width="60px" align="center" v-if="canEdit"class-name="small-padding fixed-width"><template #default="scope"><el-button link type="primary" icon="Delete" title="删除" @click="handleDelete(scope.row)"/></template></el-table-column></el-table>
其中代码,赋值给totalLossoverRetail 才能保证,后期监听时数据有发生变化
{{scope.row.totalLossoverRetail = computeDifferenceMoney(scope.row.stocktakeQty, scope.row.stocktakeTinyqty, scope.row.packageQty, scope.row.retailPrice, scope.row.totalRetail)}}
三、方法代码
watch(itemList, () => {console.log(itemList.value, 'itemList')let totalLossoverRetail = 0let totalLossoverPurchase = 0itemList.value.forEach(item => {totalLossoverRetail = Number(totalLossoverRetail) + Number(item.totalLossoverRetail);totalLossoverPurchase = Number(totalLossoverPurchase) + Number(item.totalLossoverPurchase);})sumDescription.value = '成本损溢金额 ' + totalLossoverPurchase + ' 零售损溢金额 ' + totalLossoverRetail
}, {deep: true});
其中开启深度监听
四、效果

相关文章:
VUE3中Element table表头动态展示合计信息(不是表尾合计)
一、背景 原型上需要对两个字段动态合计,输出摘要信息 原先想到是的Element的 :summary-method,发现不是动态,所以换监听来实现 二、vue代码 <el-table v-model"loading" :data"itemList"><el-table-column la…...
git重置的四种类型(Git Reset)
git区域概念 1.工作区:IDEA中红色显示文件为工作区中的文件 (还未使用git add命令加入暂存区) 2.暂存区:IDEA中绿色(本次还未提交的新增的文件显示为绿色)或者蓝色(本次修改的之前版本提交的文件但本次还未提交的文件显示为蓝色)显示的文件为暂存区中的文件(使用了…...
【Java集合面试1】说说Java中的HashMap原理?
Java中的HashMap是一种基于哈希表的Map接口实现,它存储的内容是键值对(key-value)映射。HashMap允许空键(null)和空值(null),并且它的键值对没有顺序。以下是HashMap的一些关键工作原…...
万字长文解读机器学习——决策树
🌺历史文章列表🌺 机器学习——损失函数、代价函数、KL散度机器学习——特征工程、正则化、强化学习机器学习——常见算法汇总机器学习——感知机、MLP、SVM机器学习——KNN机器学习——贝叶斯机器学习——决策树机器学习——随机森林、Bagging、Boostin…...
内网环境,基于k8s docer 自动发包
背景:生产环境是内网,无法连接外部git环境,需要上传tar包打成镜像,然后发布。 简单写了个脚本,记录下方便复用。 将tar包和脚本拷贝到同一个目录下。 使用方式: tar 包名称格式:服务名-版本号…...
【HCIP园区网综合拓扑实验】配置步骤与详解(已施工完毕)
一、实验要求 实验拓扑图如上图所示 1、按照图示的VLAN及IP地址需求,完成相关配置 2、要求SW1为VLAN 2/3的主根及主网关 SW2为vlan 20/30的主根及主网关 SW1和SW2互为备份 3、可以使用super vlan(本实验未使用) 4、上层…...
Qt 编写插件plugin,支持接口定义信号
https://blog.csdn.net/u014213012/article/details/122434193?spm1001.2014.3001.5506 本教程基于该链接的内容进行升级,在编写插件的基础上,支持接口类定义信号。 环境:Qt5.12.12 MSVC2017 一、创建项目 新建一个子项目便于程序管理【…...
Qt中 QWidget 和 QMainWindow 区别
QWidget 用来构建简单窗口 QMainWindow 用来构建更复杂的窗口,QMainWindow 继承自QWidget,在QWidget 的基础上提供了菜单栏、工具栏、状态栏等功能 菜单栏(QMenuBar)工具栏(QToolBar)状态栏(Q…...
Kafka集群中数据的存储是按照什么方式存储的?
1)Topic 数据的存储机制 Topic是逻辑上的概念,而partition是物理上的概念,每个partition对应于一个log文件,该log文件中存储的就是Producer生产的数据。Producer生产的数据会被不断追加到该log文件末端,为防止log文件…...
中断的硬件框架
往期内容 本专栏往期内容,interrtupr子系统: 深入解析Linux内核中断管理:从IRQ描述符到irq domain的设计与实现Linux内核中IRQ Domain的结构、操作及映射机制详解中断描述符irq_desc成员详解Linux 内核中断描述符 (irq_desc) 的初始化与动态分…...
数据备份策略:企业防御的关键
数据备份是保护数据免受网络攻击的重要步骤。在从恶意软件或勒索软件攻击中恢复时,公司可以使用保存的备份将其恢复到之前的状态。但是,为了确保数据的完全安全,任何公司的备份策略都应该在其总体策略中包含多种解决方案。 根据关于创建、消…...
Baget 私有化nuget
Baget下载 1、下载运行 方法一:cmd运行 dotnet BaGet.dll --urls http://*:8002 http://localhost:8002 方法二:bat脚本运行Baget 创建Start.bat dotnet BaGet.dll --urls http://*:8002 运行Start.bat 方法三:部署成Window服务 NSSM部…...
前端函数的参数都有哪些?
在前端开发中,函数的分类可以根据不同的标准进行。以下是一些常见的函数分类方式,并附有相应的例子: 按传递方式分类: 按值传递:JavaScript 中的基本类型(如数字、字符串、布尔值)都是按值传递的…...
【CSS】什么是BFC?
块级格式化上下文(Block Formatting Context,简称BFC)是CSS布局中的一种重要概念,它决定了块级盒子如何在其容器内排列,以及浮动元素对其周围元素的影响。理解BFC可以帮助解决许多常见的网页布局问题,比如清…...
HCIP小型园区网拓扑实验
1.拓扑以及需求 2.需求分析 需要的核心技术 1、虚拟局域网(VLAN) 2、链路聚合(E-trunk) 3、多生成树协议(MSTP) 4、VLANIF三层逻辑接口 5、虚拟路由冗余协议(VRRP) 6、动态主…...
GRR测量系统的重复性和再现性
GRR(GaugeRepeatabilityandReproducibility)即测量系统的重复性和再现性,是用于评估测量系统性能的一个重要指标。以下是对GRR的详细解释: 一、定义 • 重复性(Repeatability):在相同条件下&…...
133.鸿蒙基础01
鸿蒙基础 1.自定义构建函数1. 构建函数-[Builder ](/Builder )2. 构建函数-传参传递(单向)3. 构建函数-传递参数(双向)4. 构建函数-传递参数练习5. 构建函数-[BuilderParam ](/BuilderParam ) 传递UI 2.组件状态共享1. 状态共享-父子单向2. 状态共享-父子双向3. 状态共享-后代组…...
科技查新小知识
首先科技查新是什么? 科技查新是文献检索和情报调研相结合的情报研究工作,它以文献为基础,以文献检索和情报调研为手段,以检出结果为依据,通过综合分析,对查新项目的新颖性进行情报学审查,写出有…...
docker安装portainer
1、拉取镜像 docker pull portainer/portainer-ce:latest2、执行 docker run -d --restartalways --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /data/portainer/data:/data -v /data/portainer/public:/public portainer/portain…...
【Word2Vec】传统词嵌入矩阵训练方法
目录 1. Word2Vec 简介2. Word2Vec 的训练方法2.1 Skip-Gram模型2.2 CBOW(Continuous Bag of Words)模型 3. Word2Vec 中的词嵌入表示4. 训练过程中是否使用独热编码? 1. Word2Vec 简介 Word2Vec 是一种词嵌入模型,主要通过无监督…...
紫光同创Logos系列FPGA实战:BGA封装PCB布局与Fanout布线避坑指南(附示意图)
紫光同创Logos系列FPGA实战:BGA封装PCB布局与Fanout布线避坑指南 第一次拿到紫光同创Logos系列FPGA的BGA封装芯片时,那种密密麻麻的焊盘阵列确实会让人头皮发麻。特别是FBG256和FBG484这类高密度封装,如何在有限的空间内完成高质量的Fanout布…...
智能水表、血糖仪、工业HMI:STM32L152ZET6的超低功耗MCU应用版图
STM32L152ZET6:带LCD驱动的超低功耗Cortex-M3旗舰MCU 在电池供电的工业仪表、医疗设备和消费电子产品中,微控制器的功耗与集成度往往是决定产品可行性的关键因素。STM32L152ZET6是意法半导体STM32 L1系列中的高端型号,采用2020mm的LQFP-144封…...
Vcpkg不只是个安装器:在Windows上用它为你的C++项目打造可复现的构建环境
Vcpkg工程化实践:构建可复现的C开发环境 在大型C项目中,依赖管理一直是开发者面临的痛点之一。不同团队成员使用不同版本的第三方库,CI服务器上的构建环境与本地开发环境不一致,这些问题常常导致"在我机器上能运行"的尴…...
告别‘黑盒’:图解Android SDM660 UEFI XBL启动全流程与关键配置文件解析
图解Android SDM660 UEFI XBL启动全流程与关键配置文件解析 在移动设备开发领域,启动流程的透明化与可配置性一直是系统工程师关注的焦点。本文将深入剖析高通SDM660平台基于UEFI架构的XBL(Extensible Boot Loader)启动全流程,通…...
模块化电脑设计:从主板重构到硬件可持续性的创新实践
1. 项目概述:当“模块化”遇见“不无聊”的桌面电脑如果你觉得桌面电脑已经是一潭死水,被一体机和笔记本挤压得毫无新意,那 Xi3 这家硬件初创公司可能会让你眼前一亮。2012年,他们带着一个大胆的宣言闯入市场:要彻底改…...
Laravel 8.x核心特性深度解析
好的,Laravel 8.x 版本引入了多项重要改进和新特性,旨在提升开发效率和功能。以下是其主要特性:Laravel Jetstream这是一个全新的应用脚手架,提供了登录、注册、邮箱验证、双因素认证、会话管理、API 支持(通过 Sanctu…...
青岛银行员工才艺大赛|iPad评委打分系统案例
在青岛银行首届员工才艺大赛现场,熹乐互动的iPad评委打分系统为这场精彩赛事注入了高效、透明的科技体验。评委们只需通过iPad端操作,即可快速为节目打分,系统实时同步数据至大屏,自动完成分数统计、加权计算与排名更新。无需人工…...
如何快速解锁网易云音乐NCM格式:ncmdumpGUI完整免费解决方案指南
如何快速解锁网易云音乐NCM格式:ncmdumpGUI完整免费解决方案指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经遇到过这样的困扰&…...
FPGA与CPLD在数字机顶盒中的关键技术应用
1. 可编程逻辑器件在数字机顶盒中的核心价值 数字机顶盒作为连接广播网络与终端显示设备的关键枢纽,其设计面临三大核心挑战:多标准兼容性、快速功能迭代和成本控制。Xilinx Spartan系列FPGA和CoolRunner CPLD通过硬件可重构特性,为这些挑战提…...
如何快速解决Visual C++运行库安装问题:终极一站式解决方案指南
如何快速解决Visual C运行库安装问题:终极一站式解决方案指南 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过应用程序无法启动&…...

