Former-commit-id: 7b74bdf25b14c6a8da08ae07075e3f78be308894 [formerly 7b74bdf25b14c6a8da08ae07075e3f78be308894 [formerly 7b74bdf25b14c6a8da08ae07075e3f78be308894 [formerly 7b74bdf25b14c6a8da08ae07075e3f78be308894 [formerly 1e795e1614aaf94f23ad99354f6ca9be303a1b1e [formerly 9ce21aef6b043d8bfcb2849dd7c6bc34e4625387]]]]] Former-commit-id: c92d7410adc4138c7903c0067860fc3d190f54b0 Former-commit-id: 9f0ab819a505e341a6edf210efb107df8b8efe33 Former-commit-id: 3006c0d2ccda4133203372c30ffee34a73fa8944 [formerly f340ca4127e4578b3c53747d13bbaba223ed4e83] Former-commit-id: 9624c2aaa99880b5e37f1e60f1f36ac673e021ed Former-commit-id: 7923489f2c3c637782d9d4a1707bc48dfe3b1acf Former-commit-id: 2375e080a7f715bc48da40d4c56235efad3f0d5d Former-commit-id: c41402e6c0266a07e974efad41feed7c6fb7d0b6 Former-commit-id: b8814b31619151361c91ed37cb1ee7f3813853c1
133 lines
2.8 KiB
Vue
133 lines
2.8 KiB
Vue
<template>
|
||
<div>
|
||
<el-table
|
||
:data="tableData6"
|
||
border
|
||
show-summary
|
||
style="width: 100%;">
|
||
<el-table-column
|
||
prop="id"
|
||
label="ID"
|
||
width="180">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="name"
|
||
label="姓名">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="amount1"
|
||
sortable
|
||
label="数值 1">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="amount2"
|
||
sortable
|
||
label="数值 2">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="amount3"
|
||
sortable
|
||
label="数值 3">
|
||
</el-table-column>
|
||
</el-table>
|
||
<el-table
|
||
:data="tableData6"
|
||
border
|
||
height="200"
|
||
:summary-method="getSummaries"
|
||
show-summary
|
||
style="width: 100%; margin-top: 20px;">
|
||
<el-table-column
|
||
prop="id"
|
||
label="ID"
|
||
width="180">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="name"
|
||
label="姓名">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="amount1"
|
||
label="数值 1(元)">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="amount2"
|
||
label="数值 2(元)">
|
||
</el-table-column>
|
||
<el-table-column
|
||
prop="amount3"
|
||
label="数值 3(元)">
|
||
</el-table-column>
|
||
</el-table>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
export default {
|
||
title: '表尾合计行',
|
||
index: 16,
|
||
data () {
|
||
return {
|
||
tableData6: [{
|
||
id: '12987122',
|
||
name: '王小虎',
|
||
amount1: '234',
|
||
amount2: '3.2',
|
||
amount3: 10
|
||
}, {
|
||
id: '12987123',
|
||
name: '王小虎',
|
||
amount1: '165',
|
||
amount2: '4.43',
|
||
amount3: 12
|
||
}, {
|
||
id: '12987124',
|
||
name: '王小虎',
|
||
amount1: '324',
|
||
amount2: '1.9',
|
||
amount3: 9
|
||
}, {
|
||
id: '12987125',
|
||
name: '王小虎',
|
||
amount1: '621',
|
||
amount2: '2.2',
|
||
amount3: 17
|
||
}, {
|
||
id: '12987126',
|
||
name: '王小虎',
|
||
amount1: '539',
|
||
amount2: '4.1',
|
||
amount3: 15
|
||
}]
|
||
}
|
||
},
|
||
methods: {
|
||
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 (!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>
|