鱼C论坛

 找回密码
 立即注册
查看: 1668|回复: 8

[庖丁解牛] 005 V 过滤器

[复制链接]
发表于 2018-8-31 15:22:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 不二如是 于 2018-8-31 16:03 编辑


                               
登录/注册后可看大图


上一讲我们搞定了插值和表达式,本次来学习过滤器

Vue支持在“{{}}”的尾部添加一个管道符"|"对数据进行过滤。

经常用于文本,比如字母全部大写,货币数字三位一个逗号分割等。

过滤的规则是自定义的,通过给Vue实例添加选项filters来设置。

就拿上一节的时间:

                               
登录/注册后可看大图


格式很诡异哈,我们通过过滤器对其进行格式化处理。

先修改div:
  1. <div id="myA">{{time | formDate}}</div>
复制代码


然后修改代码,新增一个变量:
  1. var newDate = function (value) {
  2.         return value <10 ? '0' + value:value;
  3.     }
复制代码


修改Vue实例:
  1. var app = new Vue({
  2.         el: "#myA",
  3.         data: {
  4.             time: new Date()
  5.         },
  6. //        添加过滤
  7.         filters:{
  8. //            value就是要被过滤的值
  9.             formDate:function(value){
  10.                 var date = new Date(value);
  11.                 var year = date.getFullYear();
  12.                 var month = newDate(date.getMonth()+1);
  13.                 var day = newDate(date.getDate());
  14.                 var hours = newDate(date.getHours());
  15.                 var minutes = newDate(date.getMinutes());
  16.                 var seconds = newDate(date.getSeconds());
  17. //                见处理好的时间格式返回出去
  18.                 return year+"-"+month+"-"+day+" "+hours+":"+minutes+":"+seconds;
  19.             }
  20.         },
  21.         mounted: function(){
  22.             var _this = this;
  23.             this.timer = setInterval(function () {
  24.                 _this.time = new Date();
  25.             }, 1000);
  26.         },
  27.         beforeDestroy: function () {
  28.             if (this.timer) {
  29.                 clearInterval(this.timer);
  30.             }
  31.         }
  32.     })
复制代码

Snip20180831_165.png


过滤器写法还可以串联:
  1. {{msg|filter1|filter2}}
复制代码


还可以接受参数:
  1. {{msg|filter('arg','arg1')}}
复制代码


过滤器应用用于处理简单的文本格式,如果要实现更复杂的会用到后续我们要介绍到的“计算属性”。




课后作业


1、过滤器用来干什么?

2、过滤器可以串联写多个过滤条件吗?(T/F)



答案:
游客,如果您要查看本帖隐藏内容请回复





如果有收获,别忘了评分


                               
登录/注册后可看大图


这位鱼油,如果喜欢Vue,请订阅 专辑传送门)(不喜欢更要订阅



                               
登录/注册后可看大图

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-10-9 11:43:37 | 显示全部楼层
已学习,谢谢老板
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-8 11:10:49 | 显示全部楼层
处理简单的文本格式数据
T
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-5 09:41:57 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-18 11:05:56 | 显示全部楼层
0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-23 11:30:10 | 显示全部楼层
对数据进行过滤。
T
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-19 23:05:23 | 显示全部楼层
开始迷惑了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-18 20:59:37 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-22 11:17:51 | 显示全部楼层
围观
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-3 22:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表