vue之过滤器

2020-08-22  本文已影响0人  小李不小
一、什么是过滤器?

过滤器是对即将显示的数据做进一步的筛选处理,然后进行显示,值得注意的是过滤器并没有改变原来的数据,只是在原数据的基础上产生新的数据。

二、过滤器的使用

1、定义过滤器

全局过滤器

Vue.filter('过滤器名称', function (value1[,value2,...] ) {  

//逻辑代码

})

局部过滤器

new Vue({       
 filters: {      
    '过滤器名称': function (value1[,value2,...] ) { 
       // 逻辑代码     
      } 
         }    
  })

过滤器使用的地方

1,双花括号插值
2,v-bind表达式

过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示

<div>{{数据属性名称 | 过滤器名称}}</div>
<div>{{数据属性名称 | 过滤器名称(参数值)}}</div>

<div v-bind:id="数据属性名称 | 过滤器名称"></div>
<div v-bind:id="数据属性名称 | 过滤器名称(参数值)"></div>

三、实例

1、传递一个参数的全局过滤器
<div id="app">
    <span>{{msg|capitalize}}</span>//data中声明msg:'hello'
</div>

//全局过滤器,将信息转成大写  注意,是在vue 实列生产之前
  Vue.filter('capitalize', function (value) {
    //value左边那个属性值
    return value.toUpperCase()

  })

  const vue = new Vue({
            el: '#app', //挂载 
})

2、传递一个参数的全局过滤器
<div id="app">

    <!--过滤器接收多个参数-->
    <span>{{value1|multiple(value2,value3)}}</span>

</div>

<script>

  var vm = new Vue(
    {
      el: '#app',
      data: {
        msg: 'hello',
        value1:10,
        value2:20,
        value3:30
      },
    //局部过滤器
      filters: {
        'multiple': function (value1, value2, value3) {
          return value1*value2*value3
        }
      }

    }
  )

</script>
上一篇 下一篇

猜你喜欢

热点阅读