vue自定义指令:金额保留两位小数并且每三位逗号分割
可以专门建一个filter.js文件,统一做vue的一些自定义指令,方便以后维护。
建的filter.js在main.js中引用(全局的自定义指令)。当然你直接在main.js里写也没有问题,只是后期不好维护。这里使用filter.js文件
首先在filter.js中引入Vue
import Vue from 'vue'
//保留两位小数并用逗号分隔
Vue.filter('sumFilter', function(num) {
if(num) {
if(!isNaN(num) && typeof num === 'number') {
return num.toFixed(2).toString().replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g,'$&,'/);
} else {
return parseFloat(num).toFixed(2).toString().replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g,'$&,'/);
}
}else if (num === null || num === undefined || num === '') {
return ''
}else if (num === 0) {
return num + '.00'
}
})
//不要两位小数 用逗号分隔(把.toFixed(2)去掉)
Vue.filter('sumFilterInteger', function(num) {
if(num) {
if(!isNaN(num) && typeof num === 'number') {
return num.toString().replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g,'$&,'/);
} else {
return parseFloat(num).toString().replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g,'$&,'/);
}
}else if (num === null || num === undefined || num === '') {
return ''
}else if (num === 0) {
return num
}
})
写完自定义指令之后在你的vue文件中用到这个指令的地方
直接使用 | sumFilter 就可以了
‘金额’ | sumFilter
本文介绍如何在Vue中创建一个自定义指令,用于将金额保留两位小数并以每三位添加逗号进行分割,提升代码的可维护性。通过在filter.js文件中定义指令,并在main.js中全局引用,然后在Vue组件中使用该自定义指令`| sumFilter`来格式化金额。
1468

被折叠的 条评论
为什么被折叠?



