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 相关文章推荐
元素未显示设置width/height时IE中使用currentStyle获取为auto
May 04 Javascript
使用正则表达式的格式化与高亮显示json字符串
Dec 03 Javascript
jQuery实现Tab菜单滚动切换的方法
Sep 21 Javascript
JavaScript脚本库编写的方法
Dec 09 Javascript
实例讲解jquery与json的结合
Jan 07 Javascript
vue.js+boostrap项目实践(案例详解)
Sep 21 Javascript
详解angular中如何监控dom渲染完毕
Jan 03 Javascript
创建一般js对象的几种方式
Jan 19 Javascript
js实现点击展开隐藏效果(实例代码)
Sep 28 Javascript
微信小程序tabBar设置实例解析
Nov 14 Javascript
JS实现电脑虚拟键盘打字测试
Jun 24 Javascript
JavaScript中10个Reduce常用场景技巧
Jun 21 Javascript
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
一个多文件上传的例子(原创)
2006/10/09 PHP
MySQL GBK→UTF-8编码转换
2007/05/24 PHP
php面向对象全攻略 (七) 继承性
2009/09/30 PHP
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
PHP错误和异常处理功能模块示例
2016/11/12 PHP
在Laravel中使用DataTables插件的方法
2018/05/29 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
JS中style属性
2006/10/11 Javascript
学习YUI.Ext 第七天--关于View&amp;JSONView
2007/03/10 Javascript
jquery获取input的value问题说明
2010/08/19 Javascript
Javascript在IE和FireFox中的不同表现简析
2012/12/03 Javascript
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
jquery向上向下取整适合分页查询
2014/09/06 Javascript
node.js中的console.dir方法使用说明
2014/12/10 Javascript
js实现黑色简易的滑动门网页tab选项卡效果
2015/08/31 Javascript
vue实现表格增删改查效果的实例代码
2017/07/18 Javascript
vue中动态设置meta标签和title标签的方法
2018/07/11 Javascript
JS 封装父页面子页面交互接口的实例代码
2019/06/25 Javascript
Vuex的API文档说明详解
2020/02/05 Javascript
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
Linux下安装python3.6和第三方库的教程详解
2018/11/09 Python
解决Python pandas plot输出图形中显示中文乱码问题
2018/12/12 Python
使用Django简单编写一个XSS平台的方法步骤
2019/03/25 Python
Django REST framework内置路由用法
2019/07/26 Python
python安装gdal的两种方法
2019/10/29 Python
阿联酋航空官方网站:Emirates
2017/10/17 全球购物
美国五金商店:Ace Hardware
2018/03/27 全球购物
分解成质因数(如435234=251*17*17*3*2,据说是华为笔试题)
2014/07/16 面试题
描述RIP和OSPF区别以及特点
2015/01/17 面试题
英智兴达软件测试笔试题
2016/10/12 面试题
运动会广播稿100字
2014/09/14 职场文书
推广普通话共筑中国梦演讲稿
2014/09/21 职场文书
建党伟业电影观后感
2015/06/01 职场文书
《确定位置》教学反思
2016/02/18 职场文书
nginx location中多个if里面proxy_pass的方法
2021/03/31 Servers
Oracle更换为MySQL遇到的问题及解决
2021/05/21 Oracle