vue中全局过滤器的引入

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])
})

猜你喜欢

转载自blog.csdn.net/weixin_43837268/article/details/89561069