對于引入element UI 是導入Table 表格的方法我就不詳情說了,開始正文!
使用Table 表格 資料統計後的小數點後的9999999999,如圖
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL2cDN5EzMxgTMwMTMxkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
比如 電話号碼 在元件中,如果不做處理,他也是會對電話進行相加的,是以需要 對渲染的電話号碼進行字元串的轉換
<el-table-column label="員工電話" width="130px">
<template slot-scope="scope">
<span> {{String(scope.row.mobile)}}</span>
</template>
</el-table-column>
下面的是引用官方文檔的表格進行了修改
<template>
<div>
<el-table
:data="tableData"
border
: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 label="員工電話" width="130px">
<template slot-scope="scope">
<span> {{String(scope.row.mobile)}}</span> //對電話号碼進行字元串的轉換
</template>
</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>
下面就是js代碼
data() {
return {
tableData: [{
id: '12987122',
name: '王小虎',
mobile:13000000000
amount1: '234',
amount2: '3.2',
amount3: 10
}, {
id: '12987123',
name: '王小虎',
mobile:13000000000
amount1: '165',
amount2: '4.43',
amount3: 12
}, {
id: '12987124',
name: '王小虎',
mobile:13000000000
amount1: '324',
amount2: '1.9',
amount3: 9
}, {
id: '12987125',
name: '王小虎',
mobile:13000000000
amount1: '621',
amount2: '2.92',
amount3: 17
}, {
id: '12987126',
name: '王小虎',
mobile:13000000000
amount1: '539',
amount2: '4.21',
amount3: 15
}]
};
},
methods: {
// 表格最後一行的總價
getSummaries(param) {
console.log(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] = "";
}
});
if (sums.length===6) { //這個 6 是表格的列數
for (let u = 1; u < sums.length; u++) { //u=1是因為一開始sums[0]的值就為"合計"
if (sums[u]) { //判斷sums[u]是否有值
sums[u] = Math.round(sums[u] * 100) / 100 //可以對精度進行控制,保留兩位小數點
//如果是想保留三位小數 100改為1000即可
}
}
}
return sums;
}
}
這就完事了!
很簡單 但是一開始卻沒那麼簡單 沒想到塊去,共同進步!!