由于近期负责支付系统方面,所以涉及的数值金额方面的会很多,需要格式化的也就多了,找了一大圈,效果不佳,功夫不负有心人还是解决了,下面记录一下实现方法和代码,希望对你有帮助。
需求:把涉及数值金额用逗号分隔三位,且需要保留两位小数
处理方法:
1,在vue项目utils目录中,新建一个defined.js文件作为模块导出,
2,在vue引入,使用过滤器
// 引入格式化函数
import {
cutMoneyFiter } from '@/utils/defined';
// 使用过滤器方法,
filters: {
cutMoneyFiter
},
// 模板使用:格式化方法处理
<span class="amount">{
{
forn.accout | cutMoneyFiter }}</span>
3,实现defined.js代码如下:
export const cutMoneyFiter = (amount) => {
if(!amount) {
return "-"
}
//强制保留两位小数
let f = parseFloat(amount);
if (isNaN(f)) return false;
f = Math.round(amount * 100) / 100;
let s = f.toString();
let rs = s.indexOf('.');
if (rs < 0