本文介绍: 在这个例子中,我们处理每个列的数据,并返回一个数组,包含每列的合计值。我们还通过在第一列插入一个“总计”的文本来使它在表格底部居中显示。您可以根据需要修改这个函数来计算特定列的平均值或其他合计方式。属性来指定一个函数,计算表格中列的合计或平均值等。该函数应该返回一个对象,其中包含每个列的合计值。在 element plus 表格中,您可以使用。您可以这样设置表格的。
在 element plus 表格中,您可以使用 summary-method
属性来指定一个函数,计算表格中列的合计或平均值等。该函数应该返回一个对象,其中包含每个列的合计值。例如,如果您的表格数据是这样的:
[
{ name: 'John', age: 20, score: 80 },
{ name: 'Mary', age: 22, score: 90 },
{ name: 'Peter', age: 21, score: 85 }
]
<el-table :data="tableData" :summary-method="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>
原文地址:https://blog.csdn.net/song19990524/article/details/134610148
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_17497.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。