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

对于金额的显示,大多情况下需要保留两位小数,比如下面的(表格采用 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过滤器

    原文作者:十方
    原文地址: https://segmentfault.com/a/1190000016126729
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞