vue自定义过滤器创建和使用方法详解


Posted in Javascript onNovember 06, 2017

本文实例为大家分享了vue自定义过滤器创建和使用方法,供大家参考,具体内容如下

过滤器:生活中有很多例子,净水器 空气净化器 。

过滤器的作用:实现数据的筛选、过滤、格式化。

vue1.*版本是有内置的过滤器,但是在vue2.*所有的版本都已经没有自带的过滤器了。

1、过滤器创建

过滤器的本质 是一个有参数 有返回值的方法

new Vue({


filters:{



myCurrency:function(myInput){




return 处理后的数据



}


}

})

2、过滤器使用

语法:

<any>{{表达式 | 过滤器}}</any>

举个例子:

<h1>{{price | myCurrency}}</h1>

3、过滤器高级用法

在使用过滤器的时候,还可以指定参数,来告诉过滤器按照参数进行数据的过滤。

①如何给过滤器传参?

<h1>{{price | myCurrency('¥',true)}}</h1>

②如何在过滤器中接收到?

new Vue({
filters:{


//myInput是通过管道传来的数据


//arg1在调用过滤器时在圆括号中第一个参数


//arg2在调用过滤器时在圆括号中第二个参数


myCurrency:function(myInput,arg1,arg2){



return 处理后的数据


}


}

})

代码:

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <script src="js/vue.js"></script>
 <title></title>
</head>
<body>

<div id="container">
 <p>{{msg}}</p>
 <h1>{{price}}</h1>
 <h1>{{price | myCurrency('¥')}}</h1>
</div>

<script>
 // filter
 new Vue({
  el: '#container',
  data: {
   msg: 'Hello Vue',
   price:356
  },
  //过滤器的本质 就是一个有参数有返回值的方法
  filters:{
   myCurrency:function(myInput,arg1){
    console.log(arg1);
    //根据业务需要,对传来的数据进行处理
    // 并返回处理后的结果
    var result = arg1+myInput;
    return result;
   }
  }
 })
</script>

</body>
</html>
<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <script src="js/vue.js"></script>
 <title></title>
</head>
<body>

<div id="container">
 <p>{{msg}}</p>
 <h1>{{name | myTextTransform(false)}}</h1>
</div>

<script>
 new Vue({
  el: '#container',
  data: {
   msg: 'Hello Vue',
   name:'Michael'
  },
  filters:{
   myTextTransform: function (myInput,isUpper) {
    if(isUpper)
    {
     return myInput.toUpperCase();
    }
    else{
     return myInput.toLowerCase();
    }
   }
  }
 })
</script>

</body>
</html>
<!doctype html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>过滤器</title>
 <script src="js/vue.js"></script>
 </head>
 <body>
 <div id="container">
  <p>{{msg}}</p>
  <h1>{{price}}</h1>
  <h1>{{price|myCurrency}}</h1>
 </div>
 <script>
  new Vue({
   el:"#container",
   data:{
    msg:"Hello VueJs",
    price:356
   },
//过滤器的本质 就是一个有参数有返回值的方法
   filters:{
    myCurrency:function(myInput){
     var result = "$"+myInput;
     return result;
    }
   }
  })
 </script>
 </body>
</html>

最后一个例子是写死的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
ExtJs扩展之GroupPropertyGrid代码
Mar 05 Javascript
jquery jqPlot API 中文使用教程(非常强大的图表工具)
Aug 15 Javascript
jquery indexOf使用方法
Aug 19 Javascript
Javascript模块化编程详解
Dec 01 Javascript
js中for in语句的用法讲解
Apr 24 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
Mar 31 Javascript
seajs学习教程之基础篇
Oct 20 Javascript
微信公众号开发 实现点击返回按钮就返回到聊天界面
Dec 15 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
Dec 23 Javascript
Node.js 回调函数实例详解
Jul 06 Javascript
vue-resource post数据时碰到Django csrf问题的解决
Mar 13 Javascript
vue中h5端打开app(判断是安卓还是苹果)
Feb 26 Vue.js
Bootstrap 树控件使用经验分享(图文解说)
Nov 06 #Javascript
vue复合组件实现注册表单功能
Nov 06 #Javascript
基于vue组件实现猜数字游戏
May 28 #Javascript
vue路由嵌套的SPA实现步骤
Nov 06 #Javascript
vue综合组件间的通信详解
Nov 06 #Javascript
Angular 4中如何显示内容的CSS样式示例代码
Nov 06 #Javascript
详解基于vue-cli优化的webpack配置
Nov 06 #Javascript
You might like
配置支持SSI
2006/11/25 PHP
php执行sql语句的写法
2009/03/10 PHP
PHP 数组教程 定义数组
2009/10/23 PHP
解析php中memcache的应用
2013/06/18 PHP
PHP实现动态柱状图改进版
2015/03/30 PHP
PHP和C#可共用的可逆加密算法详解
2015/10/26 PHP
PHP命名空间与自动加载类详解
2018/09/04 PHP
JavaScript设置FieldSet展开与收缩
2009/05/15 Javascript
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
jQuery 表格工具集
2010/04/25 Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
JavaScript中几个重要的属性(this、constructor、prototype)介绍
2013/05/19 Javascript
JavaScript 上万关键字瞬间匹配实现代码
2013/07/07 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
基于jQuery仿淘宝产品图片放大镜特效
2020/10/19 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
HTML中setCapture、releaseCapture 使用方法浅析
2016/09/25 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
使用Angular CLI进行Build(构建)和Serve详解
2018/03/24 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
基于jQuery ztree实现表格风格的树状结构
2018/08/31 jQuery
小程序日历控件使用方法详解
2018/12/29 Javascript
详解NodeJS Https HSM双向认证实现
2019/03/12 NodeJs
vue中img src 动态加载本地json的图片路径写法
2019/04/25 Javascript
Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址
2019/05/21 Javascript
layer.open的自适应及居中及子页面标题的修改方法
2019/09/05 Javascript
使用python BeautifulSoup库抓取58手机维修信息
2013/11/21 Python
Django组件之cookie与session的使用方法
2019/01/10 Python
Django 返回json数据的实现示例
2020/03/05 Python
解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)
2020/03/05 Python
代理协议书范本
2014/04/22 职场文书
校庆口号
2014/06/20 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
党员读书活动心得体会
2016/01/14 职场文书
比较node.js和Deno
2021/04/27 Javascript
CSS实现鼠标悬浮动画特效
2023/05/07 HTML / CSS