1.使用地方:
双花括号插值处或  组件属性处
 
例:
{{ message | capitalize }}
<div v-bind:id="rawId | formatId"></div>
 
2.分为两种定义方式:
(1)全局定义
Vue.filter('capitalize', function (value) {
  if (!value) return ''
  value = value.toString()
  return value.charAt(0).toUpperCase() + value.slice(1)
})
 
new Vue({
  // ...
})
 
例2:过滤性别。0返回男,1返回女
<div>{{source|gender}}</div>
 
Vue.filter('gender', function (value) { //value是要准备过滤的原值
   return value === 0 ? '男' : '女'
})
 
const vm = new Vue({
     el:"#root",
     data:{
        source:0
    }
})
(2)局部定义
filters: {
  capitalize: function (value) {
    if (!value) return ''
    value = value.toString()
    return value.charAt(0).toUpperCase() + value.slice(1)
  }
}
 
例2:
const vm = new Vue({
     el:"#root",
     data:{
        source:0
    },
     filter:{
         gender(value){
               return value === 0 ? '男' : '女'
         }
     }
})
 
<div>{{source|gender|surfix}}</div>
 
例3:连续过滤    过滤完性别之后,再在结果上加“人”
 
const vm = new Vue({
     el:"#root",
     data:{
        source:0
    },
     filter:{
         gender(value){
               return value === 0 ? '男' : '女'
         },
         surfix (value) {
               return value + '人'
         },
     }
})
 
<div>{{source|gender}}</div>
 
例4:购物车里价格返回两位小数
 
const vm = new Vue({
     el:"#root",
     data:{
        source:0,
        price:123.4567
    },
     fixed (value) {
        return value.toFixed(2)          //toFixed把 Number 四舍五入为指定小数位数的数字。
       }
     },
})
 
<div>{{price|fixed}}</div>       //123.45
 
例5:传参
const vm = new Vue({
     el:"#root",
     data:{
        source:0,
        price:123.4567
    },
     fixed (value,segment) {
        return value.toFixed(segment)          //toFixed把 Number 四舍五入为指定小数位数的数字。
       }
     },
})
 
<div>{{price|fixed(segment)}}</div>       //123.45
 
3.可以对一个值进行连续过滤
{{ message | filterA('arg1', arg2) }}
 
4.可以传多个参数
{{ message | filterA('arg1', arg2) }}
 
这里 message 的值作为第一个参数,普通字符串 'arg1' 作为第二个参数,表达式 arg2 的值作为第三个参数。
 
*计算属性完全可以取代过滤器,但有时使用过滤器比较方便。
 
 
 
 
 
 
 

vue的过滤器语发及应用案例的更多相关文章

  1. Vue自定义过滤器

    gitHub地址: https://github.com/lily1010/vue_learn/tree/master/lesson05 一 自定义过滤器(注册在Vue全局) 注意事项: (1)全局方 ...

  2. vue filter过滤器简单应用

    vue中过滤器,用于一些常见的文本格式化,用 | 来操作. 过滤器可以用在两个地方: 1.在{{}}双花括号中插入值 2.v-bind表达式中使用 <!-- 在双花括号中 --> {{ m ...

  3. vue filters过滤器

    vue filters过滤器 vue.js允许我们自定义过滤器,可被使用于一些常见的文本格式化,过滤器可以用在两个地方,双花括号插值和 v-bind表达式.最常见的就是双花括号插值. 比如如下代码:{ ...

  4. vue的过滤器

    Vue.Js 提供了强大的过滤器API,能够对数据进行各种过滤处理,返回需要的结果 vue的过滤器一般在JavaScript 表达式的尾部,由“|”符号指示: 过滤器可以让我们的代码更加优美,一般可以 ...

  5. vue自定义过滤器的创建和使用

    1.简单介绍   过滤器的作用:实现数据的筛选.过滤.格式化.   过滤器的本质是一个有参数,有返回值的方法.   过滤器可以用在两个地方:双花括号插值和v-bind表达式(后者从2.1.0+开始支持 ...

  6. VUE:过滤器及日期格式化moment库

    VUE:过滤器及日期格式化moment库 <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu ...

  7. VUE笔记 - 过滤器 Vue.filter 形参默认值 @keyup.f2 自定义按键修饰符

    过滤器函数的传参: 第一个参数 A 是固定的,表示要过滤之前的内容. 第二个参数 B,表示要把原本的内容 A 过滤成 B. 写函数内容时, 这里第二处只写个参数. 实际的值要写到管道符调用函数的括号内 ...

  8. 六、vue基础--过滤器定义

    七.过滤器定义 1.使用:{{username|strip}}.<a :href="url|strip">百度</a> 2.定义:都是定义一个函数,这个函数 ...

  9. vue 时间过滤器

    过滤器:定义:对要显示的数据进行特定格式化后再显示(适用于一些简单逻辑的处理).语法:1.注册过滤器: Vue.filter(name ,callback)或new Vue{filters:{}}2. ...

随机推荐

  1. Reactor模式理解

    Reactor模式 也可以叫反应器模式或者应答者模式 reactor模式简介 让我们先了解一下阻塞I/O与非阻塞I/O I/O 是非常缓慢的 I/O绝对是计算机操作中最慢的.访问RAM的事件为ns级别 ...

  2. 查询文章的上下篇Sql语句

    直接开入正题 文章内容页一般都会有上一篇和下一篇的功能: 那么查询上下篇的sql语句应该怎么写呢:示例数据表:zmd_article自增主键:id当前文章id:10 肯定有人说,这简单啊id+1和id ...

  3. 学习记录(一)之h5_canvas

    canvas(画布) canvas(画布): 利用JS在网页中绘制图像. 标签:<canvas></canvas> 属性:height,width(宽高属性要写在行内样式中); ...

  4. 年会抽奖 抽奖系统 抽奖软件 C# Winform

    年会抽奖软件: Q.Q 358189777 C#.  数据库Access: 1.系统启动,自动全屏展示. 2.背景随心切换. 3.快捷键方便自如: F1:弹出设置界面 F2:查询人员名单.中奖名单 F ...

  5. canvas-7global.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. javaScript 设计模式之中介者模式示例

    飞机把注册信息放到铁塔里,发送数据到铁塔,报告其它的飞机一些信息. var feiji = function( name ){ this.name = name; } feiji.prototype. ...

  7. listview reclyerview上下拉刷新

    x写控件挺麻烦的,因为有很多细节要处理好,列表控件使用太频繁了,网上也各种自定义的方法,一般的listview自定义肯定会联想到加个头部,然后监听事件加动画,其实方式很多种,今天记录的方式是另外一种方 ...

  8. C# 开启一个新进程并为新进程设置工作目录

    Process p = new System.Diagnostics.Process(); //设置新进程的工作目录,如果不设置那么新进程的工作目录为开启这个进程的工作目录 p.StartInfo.W ...

  9. IDEA实用插件Lombok

    Lombok Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法.通常,我们所定义的对象和be ...

  10. mysql执行语句提示Table 'performance_schema.session_variables' doesn't exist

    用管理员身份cmd进入mysql安装目录bin里,执行 mysql_upgrade -u root -p 如果杀毒软件拦截,添加为信任区