Former-commit-id: 3673eec59eb46c38b9ae8ce91b1266aad2c5dad8 Former-commit-id: cefa3b9cadc9e6d08c871de341a9bff190095753 Former-commit-id: d5ca056fbc7d365144c17649d896d9aee035ce5d Former-commit-id: 6195c693929b52506195d8f5280b8f03ad4f6d47 [formerly 00bd4b8ea0fc897a02d2c10214a584b2e9d2938e] Former-commit-id: cabbed8c3d836fe5c26891119f6fdeb00aaae7c8 Former-commit-id: b972a4829b2c5ab9bbbf48dff6d997645f04e6c8 Former-commit-id: 1c1152f8a70de53296f7625e06036a9bf4ce842b Former-commit-id: f2b4b61ee5465c5edd3789cc52004d80188b5853 Former-commit-id: 78a67c9892149c27fc69e5dd079c2d1afeb33d1b
124 lines
2.6 KiB
Vue
124 lines
2.6 KiB
Vue
<template>
|
|
<d2-container>
|
|
<template slot="header">表尾合计行</template>
|
|
<d2-crud
|
|
:columns="columns"
|
|
:data="data"
|
|
:options="options">
|
|
</d2-crud>
|
|
<el-card shadow="never" class="d2-mb">
|
|
<d2-markdown :source="doc"/>
|
|
</el-card>
|
|
<el-card shadow="never" class="d2-mb">
|
|
<d2-highlight :code="code"/>
|
|
</el-card>
|
|
<d2-link-btn
|
|
slot="footer"
|
|
title="文档"
|
|
link="https://fairyever.com/d2-admin/doc/zh/ecosystem-d2-crud/"/>
|
|
</d2-container>
|
|
</template>
|
|
|
|
<script>
|
|
import '../install'
|
|
import doc from './doc.md'
|
|
import code from './code.js'
|
|
|
|
export default {
|
|
data () {
|
|
return {
|
|
doc,
|
|
code,
|
|
columns: [
|
|
{
|
|
title: 'ID',
|
|
key: 'id'
|
|
},
|
|
{
|
|
title: '姓名',
|
|
key: 'name'
|
|
},
|
|
{
|
|
title: '数值 1',
|
|
key: 'amount1'
|
|
},
|
|
{
|
|
title: '数值 2',
|
|
key: 'amount2'
|
|
},
|
|
{
|
|
title: '数值 3',
|
|
key: 'amount3'
|
|
}
|
|
],
|
|
data: [
|
|
{
|
|
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
|
|
}
|
|
],
|
|
options: {
|
|
showSummary: true,
|
|
summaryMethod (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>
|