1. 新建numberToCurrency.js文件
export function numberToCurrencyNo(value) {
if (!value) return 0
// 获取整数部分
const intPart = Math.trunc(value)
// 整数部分处理,增加,
const intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,')
// 预定义小数部分
let floatPart = ''
// 将数值截取为小数部分和整数部分
const valueArray = value.toString().split('.')
if (valueArray.length === 2) { // 有小数部分
floatPart = valueArray[1].toString() // 取得小数部分
return intPartFormat + '.' + floatPart
}
return intPartFormat + floatPart
}
2. 在main.js中引入并挂载
import { numberToCurrencyNo } from '@/util/numberToCurrency'
// 配置全局过滤器,实现数字千分位格式
Vue.filter('numberToCurrency', numberToCurrencyNo)
3. 在template中使用
<div>{{dataToal.totalCollectionAmount | numberToCurrency}}<span>元</span></div>