el-table 合计某一列
时间: 2023-10-03 21:08:31 浏览: 112
使用 element-ui 的 el-table 组件合计某一列可以通过以下步骤实现:
1. 给表格数据源添加一个合计字段,用来存储该列的总和。
2. 在 el-table-column 组件中使用 scoped-slot 自定义列的内容,将该列的每个单元格的值累加到合计字段中。
3. 在表格底部添加一个 el-table-footer 组件,显示合计字段的值。
下面是一个简单的示例代码:
```html
<template>
<el-table :data="tableData">
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄">
<template slot-scope="scope">{{ scope.row.age }}</template>
</el-table-column>
<el-table-column prop="score" label="分数">
<template slot-scope="scope">
{{ scope.row.score }}
<!-- 将该列的每个单元格的值累加到合计字段中 -->
<span hidden>{{ total += scope.row.score }}</span>
</template>
</el-table-column>
<el-table-footer>
<template slot="footer">
<!-- 显示合计字段的值 -->
<el-table-column :label="'合计:' + total"></el-table-column>
</template>
</el-table-footer>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{ name: '张三', age: 20, score: 80 },
{ name: '李四', age: 22, score: 90 },
{ name: '王五', age: 21, score: 85 }
],
total: 0 // 合计字段
};
}
};
</script>
```
在上面的示例代码中,我们使用了一个隐藏的 span 元素来实现将该列的每个单元格的值累加到合计字段中。同时,我们使用了 el-table-footer 组件来显示合计字段的值。
需要注意的是,如果表格中有分页的话,以上方法只能计算当前页的合计值。如果需要计算所有数据的合计值,需要在后台进行统计。
阅读全文