vue 金额过滤设置保留小数2位
常用vue过滤器设置金额,保留小数位2位,如果是整数则没有小数;//html:{{total_maney|curreny}}//js:filters:{curreny:function(data){data = Number(data).toFixed(2);if(data==parseInt(data)){...
·
常用vue过滤器设置金额,保留小数位2位,如果是整数则没有小数;
//html:
{{total_maney|curreny}}
//js:
filters:{
curreny:function(data){
data = Number(data).toFixed(2);
if(data==parseInt(data)){
data = parseInt(data);
}
return data;
}
},
方法二:vue 监听处理输入数据保留小数位2位,好用封装;
vue html使用:
<van-field
v-model.number="parems.paymoney"
center
clearable
label="付款金额(¥)"
placeholder="请输入金额,如:0.00"
>
</van-field>
vue js代码:
watch: {
//方法一:
'parems.paymoney':function (newVal,oldVal) {
if(newVal<0){
this.$toast('输入金额不能为负数!');
this.parems.paymoney='';
}
// 解决数字键盘可以输入输入多个小数点问题
if(newVal==='' && oldVal.toString().indexOf('.')>0){
this.parems.paymoney = oldVal;
return ;
}
// 保留两位小数
if(newVal){
newVal = newVal.toString();
var pointIndex = newVal.indexOf('.');
if(pointIndex>0 && (newVal.length - pointIndex)>3){
this.parems.paymoney = oldVal;
return ;
}
}
// 最大值
if(newVal>9999999999){
this.parems.paymoney = oldVal;
this.$toast('输入数值太大!');
return ;
}
}
//方法二:
'parems.paymoney':function (newVal,oldVal) {
if(newVal<0) {
this.$toast('输入金额不能为负数!');
this.parems.paymoney = '';
}
// 解决数字键盘可以输入输入多个小数点问题
this.parems.paymoney = newVal.toString().match(/^\d*(\.?\d{0,2})/g)[0];
// 最大值
if(newVal>9999999999){
this.parems.paymoney = oldVal;
this.$toast('输入数值太大!');
return ;
}
}
}
更多推荐
已为社区贡献7条内容
所有评论(0)