//全局注册 过滤器
//大写
Vue.filter("upper", (value) => {
if (!value) return "";
return value.toUpperCase();
})
//小写
Vue.filter("lower", (value) => {
if (!value) return "";
return value.toLowerCase();
})
//时间
Vue.filter("dateFormat", (value, str) => {
//str 参数 规定 年月日之间拼接的符号
if (!value) return "";
str = str || "-"
var date = new Date(value);
var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var hour = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();
return `${year}${str}${month}${str}${day} ${hour}:${min}:${sec}`;
})
//余额
Vue.filter("moneyFormat", (value, str) => {
//str 规定 货币类型
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 str+ intPartFormat + '.' + floatPart + '0';
} else {
return str+ intPartFormat + '.' + floatPart;
}
} else {
return str+ intPartFormat + floatPart;
}
})
//电话
Vue.filter("telFormat", (value, str) => {
//参数 str 规定电话之间拼接的符号
if (!value) return "";
str = str || " ";
value = value.toString().split("");
value.splice(3, 0, str);
value.splice(8, 0, str);
return value.join("");
})
//保留 n 位小数
Vue.filter("fixed",(value,n)=>{
if(!value) return "";
n = n || 1;
return value.toFixed(n);
})
未经联系擅自引用必究。作者:乾唐云。Email:qiantangyun@foxmail.com