Vue过滤器的简单使用--实时显示格式化的时间

Vue的过滤器的使用是在{{}}插值的尾部添加一个管道符  | 

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

通过过滤器对时间进行格式化从而实时显示时间

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>Vue 过滤器的简单使用---实时显示格式化时间</title>
 </head>
 <body>
  <div id="app">
    {{date | formatDate}}
  </div>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src=" href='https://cdn.jsdelivr.net/npm/vue/dist/vue.js">https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
    //此函数的作用是在月份、日期、小时等小于10时在前面补0
    var padDate = function(value){
        return value<10 ? '0'+value : value;
        };

    var app = new Vue({
     el:'#app',
     data:{
         date:new Date()
     },
     filters:{
          //这里的value参数就是要过滤的数据
          formatDate : function (value) {
                var date = new Date(value);
                var year = date.getFullYear();
                var month = padDate(date.getMonth());
                var day = padDate(date.getDate());
                var hours = padDate(date.getHours());
                var minutes = padDate(date.getMinutes());
                var seconds = padDate(date.getSeconds());
                //将整理好的格式化的日期返回
                return year+'-'+month+'-'+day+'-'+hours+':'+minutes+':'+seconds;
            }
        },
     //mounted是在el挂载到实例上后调用,一般第一个业务逻辑会在这里开启
     mounted:function(){
        var _this = this; //声明一个变量指向Vue实例this,保证作用域一致
        this.timer = setInterval(function(){  
        //设置定时器,每秒执行一次function函数,
        //函数是获取当前时间并给date变量赋值(每秒赋值一次)
            _this.date = new Date();  //修改数据date
        },1000);
     },
     beforeDestroy:function(){
        if(this.timer){
            clearInterval(this.timer);  //在Vue实例销毁前,清除定时器
        }
     }
 })
</script>
 </body>
</html>


过滤器也可以串联:

{{ message | filter1 | filter2 }}

过滤器也可以接受参数:

{{ message | filter1 ('arg1','arg2')}}

这里的字符串arg1 和 arg2 分别传给过滤器的第二个和第三个参数,第一个是数据本身

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霸道流氓气质

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值