普通过滤器(filter)在当前页面定义,复制红色代码即可
<template>
<view>
<text >{{balance|money}}</text>
</view>
</template>
<script>
export default{
data(){
return{
balance:1223434534.367,
}
},
methods: {
},
filters:{
money(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;
}
}
}
}
</script>
<style>
</style>
全局过滤器(filter)在main.js中定义,复制红色代码即可
import Vue from 'vue'
import App from './App'
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;
}
})
Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
...App
})
app.$mount()