element-ui–table表格自定义计算合计功能
直接贴代码了
<el-table
:data="tableData"
class="table"
show-summary //合计方法
:summary-method="getSummaries" //自定义计算合计
>
js
// 表格总计的时间
getSummaries(param) {
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = "总计";
// index 表示表格的第几列开始计算
} else if (index === 6) {
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 Number(prev.toFixed(2)) + curr;
} else {
return prev;
}
}, 0);
} else {
sums[index] = "N/A";
}
} else {
sums[index] = "--";
}
});
return sums;
},