element-ui表格列金额显示两位小数的方法

别自制压力,我们没有必要跟着时间走,只需跟着心态和能力走,随缘,尽力,达命,问心无愧,其他的,交给天。

对于金额的显示,大多情况下需要保留两位小数,比如下面的(表格采用 element-ui):

在vue.js中,对文本的处理通常是通过设置一系列的过滤器,过滤器可以用在两个地方:双花括号插值 和 v-bind 表达式 (后者从 2.1.0+ 开始支持)。

定义过滤器

filters: {
 rounding (value) {
 return value.toFixed(2)
 }
}

toFixed() 方法可把 Number 四舍五入为指定小数位数的数字,使用语法如下:

NumberObject.toFixed(num)

其中 num 为必需项,用于规定小数的位数,取值范围 [0, 20],有些实现可以支持更大的数值范围,如果省略了该参数,将用 0 代替。

js中保留两位小数的方法有很多,这里只使用了JavaScript自带的 toFixed() 方法。

使用过滤器

<el-table-column
 prop="itemPrice"
 header-align="center"
 align="center"
 label="充值金额 / 元">
 <template slot-scope="scope">
 <span>{{scope.row.itemPrice / 100 | rounding}}</span>
 </template>
</el-table-column>
......
<el-table-column
 prop="payPrice"
 header-align="center"
 align="center"
 label="支付金额 / 元">
 <template slot-scope="scope">
 <span>{{scope.row.payPrice / 100 | rounding}}</span>
 </template>
</el-table-column>
......

其中数据 payPrice 是以 分 为单位保存的,显示的时候先转换成 元,然后通过 rounding 过滤器保留两位小数。

到此element-ui表格列显示两位小数就实现了,关键是Vue的过滤器,详细使用参考 【Vue过滤器】

PS:Element-UI 表格 列过多内容换行问题

一般表格不会有很多列,所以在使用时会很方便,但是如果有25+个列时,就会发现宽度完全不够用,只有2000,内容妥妥放不下会换行。

这时就需要找到一个完美的解决方法,让内容不换行,同时全部显示出来。

然而

没有我并找到什么好的解决方法,只能在 el-table-column 中给个固宽先用着

el-table-column(align='center' width='130px')

本文element-ui表格列金额显示两位小数的方法到此结束。想瘦就去减肥,想长肌肉就去健美,想考北大清华就好好学习,想她就去追。肥肉不会自己飞走,肌肉也不会凭白长出,知识不会通过蓝牙传输到你脑里,你喜欢的人也不会毫无缘由地爱上你。不把时间花在现实而用于幻想,等同于坐以待毙。请记住:但凡拥有梦想的人,他们都不做选择题,而只做证明题!小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
vue 保留两位小数 不能直接用toFixed(2) 的如何解决

JavaScript中判断为整数的多种方式及保留两位小数的方法

Vue toFixed保留两位小数的3种方式

解读element el-upload上传的附件名称不显示 file-list赋值

element upload 钩子函数的坑及如何解决