uniapp filter 自动处理value,金额小数点_金额逗号_保留两位小数

有时后台取出来value,需要统一做个处理,可以使用filter,

方法一、定义为本页面filter

1、页面定义filter,这个filter是截取两位小数

onLoad(options){			
},       
filters:{
	formatPrice(data){
		if(typeof(data)==="number"){
			return parseFloat(data).toFixed(2);
		}
		return 0.00;
	}
},
methods: {
}

2、页面使用

{{ goodsItem.price | formatPrice }}

 

方法二、定义为全局filter

1、main.js 定义filter,方便全局调用

这个filter是处理金额两位小数,并在多位数时添加逗号(效果 123,456,789.12  )

Vue.filter('money', function (value) {
	if (!value) return '0.00';
	var value = value.toFixed(2);//提前保留两位小数
	var intPart = Number(value).toFixed(0); // 获取整数部分
	var intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'); // 将整数部分逢三一断 ???
	var floatPart = '.00'; // 预定义小数部分
	value = value.toString();//将number类型转为字符串类型,方便操作
	var value2Array = value.split('.');
	if (value2Array.length === 2) { // =2表示数据有小数位
	  floatPart = value2Array[1].toString(); // 拿到小数部分
	  if (floatPart.length === 1) { // 补0,实际上用不着
		  return intPartFormat + '.' + floatPart + '0';
	  } else {
		  return intPartFormat + '.' + floatPart;
	  }
	} else {
	  return intPartFormat + floatPart;
	}
})

2 页面使用

{{this.orderSum | money}}

 

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yfx000

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值