1.src下新建filter文件件,filter文件夹下fliter.js
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex);
//测试过滤器
/* 设置金额格式 1,234.56 */
let moneyFormat = value => {
/* //金额转换 分->元 保留2位小数 并每隔3位用逗号分开 1,234.56
let intSum = value.substring(0,value.indexOf(".")).replace( /\B(?=(?:\d{3})+$)/g, ',' );//取到整数部分
let dot = value.substring(value.length,value.indexOf("."))//取到小数部分搜索
let ret = intSum + dot;*/
// return ret;
return value;
}// 将num四舍五入并截取n位小数。
/**
* 保留2位小数
* @param x不四舍五入
* @returns {*}
*/
let fmtResult = x => {
var f = parseFloat(x);
if (isNaN(f)) {
return false;
}
var f = Math.round(x*100)/100;
var s = f.toString();
var rs = s.indexOf('.');
if (rs < 0) {
rs = s.length;
s += '.';
}
while (s.length <= rs + 2) {
s += '0';
}
return s;
}
/**
* 保留4位小数
* @param x不四舍五入
* @returns {*}
*/
let fmtFloat = x => {
var f = parseFloat(x);
if (isNaN(f)) {
return false;
}
var f = Math.round(x*10000)/10000;
var s = f.toString();
var rs = s.indexOf('.');
if (rs < 0) {
rs = s.length;
s += '.';
}
while (s.length <= rs + 4) {
s += '0';
}
return s;
}
let orgnValue = val => {
if(val === '1'){
return '理财经理';
}else if(val === '2'){
return '网点';
}else if(val === '3'){
return '行社';
}
return '';
}
//转换出有时分秒的时间
let formTimehms = val => {
if (val) {
let date = new Date(val);
let y = date.getFullYear();
let m = date.getMonth() + 1;
m = m < 10 ? '0' + m : m;
let d = date.getDate();
d = d < 10 ? ('0' + d) : d;
let h = date.getHours();
let m1 = date.getMinutes();
let s = date.getSeconds();
h = h < 10 ? '0' + h : h;
m1 = m1 < 10 ? '0' + m1 : m1;
s = s < 10 ? ('0' + s) : s;
return h + ':' + m1 + ':' + s;
} else {
return '';
}
}
//定义下全局过滤器 往 {}里面加 逗号隔开
export {moneyFormat,fmtResult,fmtFloat,orgnValue,formTimehms}
2.main.js
//全局过滤器文件
import * as custom from '@/filter/filter.js'
Object.keys(custom).forEach(key => {
Vue.filter(key, custom[key])
})