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

element plus中表格的合计属性和例子

在 element plus 表格中,您可以使用 summary-method 属性来指定一个函数,计算表格中列的合计或平均值等。该函数应该返回一个对象,其中包含每个列的合计值。例如,如果您的表格数据是这样的:

[{ name: 'John', age: 20, score: 80 },{ name: 'Mary', age: 22, score: 90 },{ name: 'Peter', age: 21, score: 85 }
]

您可以这样设置表格的 summary-method

<el-table :data="tableData" :summary-method="getSummary">

然后实现 getSummary 函数:

methods: {getSummary({ columns, data }) {const sums = []columns.forEach((column, index) => {if (index === 0) {sums[index] = '总计'return}const values = data.map(item => Number(item[column.property]))if (!values.every(value => isNaN(value))) {sums[index] = values.reduce((prev, curr) => {const value = Number(curr)if (!isNaN(value)) {return prev + curr} else {return prev}}, 0)sums[index] += ' 分'} else {sums[index] = 'N/A'}})return sums}
}

在这个例子中,我们处理每个列的数据,并返回一个数组,包含每列的合计值。我们还通过在第一列插入一个“总计”的文本来使它在表格底部居中显示。您可以根据需要修改这个函数来计算特定列的平均值或其他合计方式。

完整的例子:

<template><el-table :data="tableData" :summary-method="getSummary"><el-table-column label="Name" prop="name"></el-table-column><el-table-column label="Age" prop="age"></el-table-column><el-table-column label="Score" prop="score"></el-table-column></el-table>
</template><script>
export default {data() {return {tableData: [{ name: 'John', age: 20, score: 80 },{ name: 'Mary', age: 22, score: 90 },{ name: 'Peter', age: 21, score: 85 }]}},methods: {getSummary({ columns, data }) {const sums = []columns.forEach((column, index) => {if (index === 0) {sums[index] = '总计'return}const values = data.map(item => Number(item[column.property]))if (!values.every(value => isNaN(value))) {sums[index] = values.reduce((prev, curr) => {const value = Number(curr)if (!isNaN(value)) {return prev + curr} else {return prev}}, 0)sums[index] += ' 分'} else {sums[index] = 'N/A'}})return sums}}
}
</script>

http://www.lryc.cn/news/249553.html

相关文章:

  • 计网Lesson1笔记
  • 指针数组以及利用函数指针来实现简易计算器及typedef关键字(指针终篇)
  • josef JZ-7Y-33静态中间继电器 电压DC220V 板前接线
  • Java第二十章 ——多线程
  • 【超强笔记软件】Obsidian实现免费无限流量无套路云同步
  • 【Linux小项目】实现自己的bash
  • 客户案例:EDLP助力金融行业打造高效数据防泄露体系
  • 【JavaFX漏扫开发基础】stage窗口/模式/模态
  • MySQL进阶知识:锁
  • linux下的工具---gdb
  • ESP32-Web-Server编程-JS 基础 2
  • Java Web基础教程
  • BUUCTF john-in-the-middle 1
  • HashMap的死循环及数据覆盖问题
  • 数据库数据恢复—MongoDB数据库文件拷贝出现错误的数据恢复案例
  • 2023年11月个人工作生活总结
  • Spark-06:Spark 共享变量
  • Spring整合web环境
  • 分享从零开始学习网络设备配置--任务4.3 使用动态路由RIPng实现网络连通
  • vue2.0+elementui集成file-loader之后图标失效问题
  • C# 文件帮助类(FileHelper)
  • WordPress 外链跳转插件
  • 算法的10大排序
  • “十道机器学习问题,帮助你了解基础知识和常见算法“
  • 部署WAF安全应用防火墙(openresty部署)
  • yml转properties工具
  • zerotier 搭建 moon中转服务器 及 自建planet
  • 深入了解Rabbit加密技术:原理、实现与应用
  • Linux常用命令——mv命令
  • Panalog 日志审计系统 前台RCE漏洞复现