Vue 中的过滤器

1.vue中的过滤器:是vue为开发者提供的功能,常用于文本的格式化

2.使用的地方:通过插值表达式 和 v-bind 属性绑定

3.过滤器通过 "管道符 ”  |  进行调用

实例:

在插值表达式里面使用过滤器:《==通过过滤器对msg进行过滤,得到想要的文本格式

{{ msg | 过滤器名字 }}

在v-bind属性里面使用 :《== 通过过滤器对 title进行过滤 然后得到想要的文本格式

4.过滤器的定义分为:局部过滤器和全局过滤器

局部过滤器:组件私有的过滤器,可以在filters 节点中定义过滤器,该过滤器只能在当前组件中调用(在当前组件里面定义)

比如定义一个把字符串首字符转换成大写的局部过滤器

export default {

     filters:{

            upper(input){

                             return input.slice(0,1).toUpperCase()+input.slice(1)

}   }}

全局过滤器:可以在多个vue组件之间共享过滤器,可以在main.js中通过Vue.filter()方法定义全局过滤器

比如把字符串首字母转换成大写的全局过滤器

main.js中

Vue.filter("upper",function(input){

   return input.slice(0,1).toUpperCase()+input.slice(1)

})

定义一个全局过滤器:把数字保留两个小数

Vue.filter("tofix",(data)=>{

    return parseFloat(data).toFixed(2)

})

调用多个过滤器:

{{ msg |tofix |upper }}

执行过程:把msg的值交给tofix过滤器进行处理,处理的值然后再交给upper过滤器进行处理,最终把upper处理的结果渲染到页面上

过滤器还可以进行传参:过滤处理参数的时候,第一个参数永远是第一个,其他的参数是额外接收的:

例如:

{{ msg |fiterA(arg1,arg2) }}

过滤器会接收三个参数,分别是 msg,arg1,arg2

fiters:{

 //这样是给过滤器的额外参数提供默认值

   filterA(input,arg1=0,arg2=1){

}

 

 

你可能感兴趣的:(vue,过滤器)