表格进行实时百分比计算

开发中的需求和样式图

因为要实时渲染,所以调用了@input事件,实时触发input框变化事件
html代码

<el-table-column prop="dosage" show-overflow-tooltip><template slot="header">用量(kg)<i class="imported">*</i></template><template slot-scope="scope"><el-inputv-model="scope.row.dosage" @input="calculation(scope.row.dosage, scope.$index)">     ---传入所在行数据</el-input></template></el-table-column><el-table-column prop="percentage" label="占比%" show-overflow-tooltip></el-table-column>

js代码

  watch: {// 监测路由变化,只要变化了就调用获取路由参数方法将数据存储本组件即可$route: 'getParams',//公共属性实时监听只要产生变化就重新计算所有行数据numbers: {handler(val, oldVal) {console.log('currentForm', val, oldVal);this.allcalculation();}}},methods: {//遍历循环所有表格数据allcalculation() {//this.tableData 绑定的表格数据this.tableData.forEach((item, index) => {console.log(item.dosage);//传入用量和所在行this.calculation(item.dosage, index);});},//计算calculation(row, index) {console.log(row);// console.log(index);var sum = 0;var sums = [];this.tableData.forEach((item) => {//如果数据为空就返回 0if (!item.dosage) {item.dosage = 0;}//遍历循环添加浮点小数到新的数组中sums.push(parseFloat(item.dosage));});console.log(sums);//计算总数for (let i = 0; i < sums.length; i++) {sum += sums[i];}console.log(sum);let numbers = '0%';//调用事件计算返回百分比numbers = this.toPercent(parseFloat(row) / sum);//进行百分比赋值this.tableData[index].percentage = numbers;//改变公共属性 配合监听变化this.numbers = numbers;},toPercent(point) {var str = Number(point * 100).toFixed(2);str += '%';return str;},},

要注意点,如果你的数据为空记得写个判断,返回值赋值为0,否则所有百分比数据会变成NAN%
我写的方法可能是最笨的了,有什么更好的改进方法,欢迎交流学习

elment-ui 表格进行实时百分比计算相关推荐

  1. 大数据实时流计算详解

    开篇词-攻克实时流计算难点,掌握大数据未来 我曾任职于华为 2012 实验室高斯部门,负责实时分析型内存数据库 RTANA.华为公有云 RDS 服务的研发工作.目前,我专注于移动反欺诈解决方案的研发. ...

  2. vue + elment ui打印表格数据

    vue + elment ui打印表格数据 主要的原理就是 在vue项目中 通过调用浏览器自带的打印功能,完成对table数据的打印 解决表格错位 以及elment ui 双重表头的问题 封装一下打印 ...

  3. 腾讯基于 Flink 的实时流计算平台演进之路

    原文地址:https://www.infoq.cn/article/TjDeQDJQpKZ*NpG71pRW 大家好,我是来自腾讯大数据团队的杨华(vinoyang),很高兴能够参加这次北京的 QCo ...

  4. el如何获取复选框的值_element ui 表格提交时获取所有选中的checkbox的数据

    设定此属性@selection-change="changeFun",意思是每次勾选的时候都会触发这个事件 //复选框状态改变 changeFun(val) { this.mult ...

  5. element UI 表格实现 表尾合计行 ——小肉包

    element UI 表格实现 表尾合计行 --小肉包 可以根据需要计算任意列的合计,效果图如下 说明:elementUI 官网提供了标为合计行的计算方法,参考elementUI 官网table组件 ...

  6. element UI表格绑定动态数据与selection复选操作

    element UI表格绑定动态数据与selection复选操作的坑 案例介绍:此案例是要求完成对客户的批量删除功能,因为客户有多条数据所以要结合分页组件来实现,并且批量删除按钮默认是禁用的,当有数据 ...

  7. Elment UI的使用说明

    一. Elment UI 1. 简介 Element UI是饿了么团队提供的一套基于Vue2.0的组件库,可以快速搭建网站,提高开发效率,就如同bootstrap. 2.组件分类 ElementUI  ...

  8. 用php做一个简单的汇率,vue实现简单实时汇率计算功能

    最近在自己摸索vue的使用,因为相对于只是去看教程和实例,感觉不如自己动手写一个demo入门来的快.刚好看到小程序中有一个简单但是很精致的应用极简汇率,而且它的表现形式和vue的表现形式很像,于是想着 ...

  9. 海量数据的实时指标计算

      最近看了一本书叫<风控要略-互联网业务反欺诈之路>,这本书主要是讲互联网产品安全防范的,我之前做过一年情报数据分析的工作,当时觉得这方面工作很机密,网络上几乎没什么相关的资料,这本书让 ...

最新文章

  1. 深入理解JVM之二:垃圾收集器概述
  2. SharePoint Online 创建用户和组
  3. 变频器输出功率_变频器的输出功率该如何选择?
  4. 【转】使用C#发送Http 请求实现模拟登陆(以博客园为例)
  5. 2009年9月三级网络技术考前预测_填空题部分
  6. 工质热物理性质计算程序的编制及应用_新能源动力电池热管理方案设计和热流体仿真...
  7. [导入]Google Earth坐标集(能更看清这个世界喽!)
  8. C语言 __DATE__ - C语言零基础入门教程
  9. js求两圆交点_Chart.js找到交点Point并绘制一个圆
  10. 获取3的倍数_植物分类的基础——获取广泛来源的资料【乱翻书】
  11. 手机音频拼接软件_几款好用的修音软件,有需要的小伙伴快来下载吧
  12. 关于SpringBoot对junit4/junit5的整合
  13. 华为USG6000V 多ISP接入Internet(基于ISP目的地址的多出口)
  14. 大众点评爬虫(Python)
  15. Visual Studio与UG版本对应关系
  16. IT服务公司经理专栏:小公司管理(3)
  17. ansible之判断语句jinja2模板的使用 与roles角色的配置使用
  18. 实时计算与SparkSteaming的对比
  19. 辽宁省抚顺市谷歌高清卫星地图下载
  20. 数据库常见笔试面试题

热门文章

  1. Jenkins - 构建Allure Report
  2. Expect 安装 on centos7
  3. 误删除的文件夹还能恢复吗?
  4. linux基础(day22)
  5. Linux 有问必答:如何在Ubuntu或者Debian中启动后进入命令行
  6. 外包:卡卡软件简要思路
  7. 编写一个方法,数出从0到n中数字2出现了几次?
  8. OSPF分解试验部分-LAB7:NSSA区域
  9. 2009年中国贫富标准线
  10. 毕业设计:基于SSM实现新生报道系统