el-table 合计时 根据条件进行加减合计
2021/5/7 0:36:55 | 阅1850 | 来源:好空间网络 [打印] [关闭] |
// 表格 <el-table :data="tableData" border stripe style="width: 100%" show-summary :summary-method="getSummaries"></el-table> // 方法 getSummaries(param) { const { columns, data } = param const sums = [] columns.forEach((column, index) => { if (index === 0) { sums[index] = '合计' return } const values = data.map(item => Number(item[column.property])) if (column.property === 'pric') { sums[index] = values.reduce((prev, curr, e) => { console.log(values) console.log('prev=' + prev, 'curr=' + curr, 'e=' + e, 'data.isadd=' + data[e].isadd) return data[e].isadd === 0 ? prev - curr : prev + curr }, 0) sums[index] += '' } })
这里主要的地方在于
sums[index] = values.reduce((prev, curr, e) => { return data[e].isadd === 0 ? prev - curr : prev + curr }, 0)
这里可以自定义一个e 进去,他是 数据的下标
可以结合 上面传递进来的data[e]的形式获得 isadd 是0 还是1 是1就增加 是0则想减少
这样就可以实现增加和减少了