mirror of
https://gitee.com/xuliangzhan_admin/vxe-table.git
synced 2026-01-21 05:27:57 +08:00
135 lines
3.1 KiB
Vue
135 lines
3.1 KiB
Vue
<template>
|
|
<div>
|
|
<vxe-grid v-bind="gridOptions"></vxe-grid>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
data () {
|
|
return {
|
|
tableData: [],
|
|
gridOptions: {
|
|
border: true,
|
|
showFooter: true,
|
|
autoResize: false,
|
|
height: 400,
|
|
columns: [
|
|
{ field: 'a', title: 'a', width: 47 },
|
|
{ field: 'b', title: 'b', width: 55 },
|
|
{ field: 'c', title: 'c', width: 105 },
|
|
{ field: 'd', title: 'd', width: 200 },
|
|
{ field: 'e', title: 'e', width: 200 },
|
|
{ field: 'f', title: 'f', width: 200 },
|
|
{ field: 'g', title: 'g', width: 410 }
|
|
],
|
|
footerMethod ({ columns, data }) {
|
|
return [
|
|
columns.map((column, columnIndex) => {
|
|
if (columnIndex === 0) {
|
|
return '平均'
|
|
}
|
|
if (['age', 'rate'].includes(column.field)) {
|
|
return this.meanNum(data, column.field)
|
|
}
|
|
return ''
|
|
})
|
|
]
|
|
},
|
|
data: [
|
|
{
|
|
id: 10001,
|
|
name: 'Test1',
|
|
nickname: 'T1',
|
|
role: 'Develop',
|
|
sex: 'Man',
|
|
age: 28,
|
|
rate: 6,
|
|
address: 'Shenzhen'
|
|
},
|
|
{
|
|
id: 10002,
|
|
name: 'Test2',
|
|
nickname: 'T2',
|
|
role: 'Test',
|
|
sex: 'Women',
|
|
age: 22,
|
|
rate: 5,
|
|
address: 'Guangzhou'
|
|
},
|
|
{
|
|
id: 10003,
|
|
name: 'Test3',
|
|
nickname: 'T3',
|
|
role: 'PM',
|
|
sex: 'Man',
|
|
age: 32,
|
|
rate: 4,
|
|
address: 'Shanghai'
|
|
},
|
|
{
|
|
id: 10004,
|
|
name: 'Test4',
|
|
nickname: 'T4',
|
|
role: 'Designer',
|
|
sex: 'Women',
|
|
age: 23,
|
|
rate: 1,
|
|
address: 'Shenzhen'
|
|
},
|
|
{
|
|
id: 10005,
|
|
name: 'Test5',
|
|
nickname: 'T5',
|
|
role: 'Develop',
|
|
sex: 'Women',
|
|
age: 30,
|
|
rate: 5,
|
|
address: 'Shanghai'
|
|
},
|
|
{
|
|
id: 10006,
|
|
name: 'Test6',
|
|
nickname: 'T6',
|
|
role: 'Designer',
|
|
sex: 'Women',
|
|
age: 21,
|
|
rate: 2,
|
|
address: 'Shenzhen'
|
|
},
|
|
{
|
|
id: 10007,
|
|
name: 'Test7',
|
|
nickname: 'T7',
|
|
role: 'Test',
|
|
sex: 'Man',
|
|
age: 29,
|
|
rate: 7,
|
|
address: 'Shenzhen'
|
|
},
|
|
{
|
|
id: 10008,
|
|
name: 'Test8',
|
|
nickname: 'T8',
|
|
role: 'Develop',
|
|
sex: 'Man',
|
|
age: 35,
|
|
rate: 5,
|
|
address: 'Shenzhen'
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
methods: {
|
|
meanNum (list, field) {
|
|
let count = 0
|
|
list.forEach((item) => {
|
|
count += Number(item[field])
|
|
})
|
|
return count / list.length
|
|
}
|
|
}
|
|
}
|
|
</script>
|