vue自定义过滤器,包括全局过滤器和组件内过滤器 直接上代码: 全局过滤器
Vue.filter('globalFilter', function (value) {
return value + "!!!"
})
复制代码
组件过滤器
filters:{
componentFilter:function(value){
return value + "!!!"
}
}
复制代码
上面有种写法有个需要注意的问题:全局注册时是filter,没有s的。而组件过滤器是filters,是有s的,这要注意了,虽然你写的时候没有s不报错,但是过滤器是没有效果的;
使用方法 一,在双花括号插值
{{ 'abc' | globalFilter }}
复制代码
二,在v-bind表达式中使用
<div v-bind:data="'abc' | globalFilter" ></div>
复制代码
过滤器的参数写法 1、
{{ message | filterA | filterB }}
复制代码
message是作为参数传给filterA 函数,而filterA 函数的返回值作为参数传给filterB函数,最终结果显示是由filterB返回的。 2、
{{ message | filterA('arg1', arg2) }}
复制代码
filterA的第一个参数是message,依次是‘arg1’,arg2 3、
{{ 'a','b' | filterB }}
复制代码
表示'a'和'b'分别作为参数传给filterB