如何全局注册过滤器(filter)

一个vue项目中难免会遇到一些地方需要用到filter,那么怎么写,才能在各个组件中肆意使用啦.

一,在static目录下新建一个filter目录,在filter目录下创建一个filter.js文件,这里举一个给商品价格精确不足两位的补0,比如22.2->22.20,22->22.00

看代码:

**
 * 给商品价格加补0
 * @param {*} value 
 */
const addZero=function(value){
    var value=Math.round(parseFloat(value)*100)/100;
    var xsd=value.toString().split(".");
    if(xsd.length==1){
        value=value.toString()+".00";
        return value;
    }
    if(xsd.length>1){
        if(xsd[1].length<2){
            value=value.toString()+"0";
        }
        return value;
    }
}
export default {
    addZero
}

二,在入口文件中引入这个filter文件 (路径以你自己的为准)

import filters from '../../../static/filter/filter';

三,在入口文件中全局注册filter

//过滤器统一处理加载
Object.keys(filters).forEach(key => {  
  Vue.filter(key, filters[key])  
}) 

四,在组件中使用

{{content | addZero}}

这样写的好处是,如果后续有多个filter的话,可以直接在filter文件中添加即可,不用再改别的地方.很方便.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值