Vue filter 过滤当前时间 实现实时更新效果


Posted in Javascript onDecember 20, 2019

过滤器

过滤器是处于客户端与服务器资源文件之间的一道过滤网,在访问资源文件之前,通过一系列的过滤器对请求进行修改、判断等,把不符合规则的请求在中途拦截或修改。也可以对响应进行过滤,拦截或修改响应。

下面通过代码给大家介绍Vue filter 过滤当前时间 实现实时更新,具体代码如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <script src="https://cdn.bootcss.com/vue/2.4.4/vue.min.js"></script>
</head>
<body>
  <div id="ssl">
    {{currentTime|filterTime}}
  </div>
</body>
<script>
  var em = new Vue({
    el: "#ssl",
    data: {
      currentTime: new Date(), // 获取当前时间
    },
    filters: {
      filterTime(val) {
        var Y = val.getFullYear()
        var M = val.getMonth()
        var D = val.getDate()
        var H = val.getHours()
        var MI = val.getMinutes()
        var S = val.getSeconds()
        return Y + "年" + M + "月" + D + "日" + H + "时" + MI + "分" + S + "秒"
      }
    },
    //声明周期函数 是最早使用data数据的函数
    created() {
      var _this = this; //声明一个变量指向Vue实例this,保证作用域一致
      setInterval(function () {
        _this.currentTime = new Date()//修改数据让他可以实时更新
      }, 1000);
    }
  })
</script>
</html>

这里使用了created生命周期函数 created是最早操作date数据的

代码逻辑:先让当前时间可以实时更新 在created里面

然后在filters里面更改时间格式

ps:Vue 时间过滤器

Vue里的 时间过滤器:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="https://unpkg.com/vue"></script>
</head>
<body>
<div id="app">
<div>
 {{ message | formatTime('YMD')}}
</div>
<div>
{{ message | formatTime('YMDHMS')}}
</div>
  <div>
  {{ message | formatTime('HMS')}}
  </div>
  <div>
  {{ message | formatTime('YM')}}
  </div>
  </div>

元素的补零计算:

<script>
//元素的补零计算
function addZero(val){
 if(val < 10){
 return "0" +val;
 }else{
 return val;
 }
};

console.log(addZero(9))

//实现vue中的过滤器功能 先定义过滤器 在使用    value是过滤器前面的值,type是过滤器中定义的字段
Vue.filter("formatTime",function(value,type){
var dataTime="";
var data = new Date(); 
       data.setTime(value); 
   var year  = data.getFullYear(); 
       var month = addZero(data.getMonth() + 1); 
       var day  = addZero(data.getDate()); 
       var hour  = addZero(data.getHours());
var minute = addZero(data.getMinutes());
var second = addZero(data.getSeconds());
if(type == "YMD"){
dataTime = year + "-"+ month + "-" + day;
}else if(type == "YMDHMS"){
dataTime = year + "-"+month + "-" + day + " " +hour+ ":"+minute+":" +second;
}else if(type == "HMS"){
dataTime = hour+":" + minute+":" + second;
}else if(type == "YM"){
dataTime = year + "-" + month;

}
return dataTime;//将格式化后的字符串输出到前端显示
});


var app = new Vue({
 el: '#app',
 data: {
  message: '1501068985877'
 }
     });
</script>

总结

以上所述是小编给大家介绍的Vue filter 过滤当前时间 实现实时更新,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jqeury eval将字符串转换json的方法
Jan 20 Javascript
jQuery 中使用JSON的实现代码
Dec 01 Javascript
JavaScript实现网页上的浮动广告的简单方法
Jun 14 Javascript
js confirm()方法的使用方法实例
Jul 13 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
Feb 24 Javascript
js的参数有长度限制吗?发现不能超过2083个字符
Apr 20 Javascript
javascript实现图片轮播效果
Jan 20 Javascript
详解A标签中href=&quot;&quot;的几种用法
Aug 20 Javascript
fullpage.js最后一屏滚动方式
Feb 06 Javascript
JavaScript闭包相关知识解析
Oct 19 Javascript
electron 安装,调试,打包的具体使用
Nov 06 Javascript
解决Vue打包上线之后部分CSS不生效的问题
Nov 12 Javascript
使用JavaScript计算前一天和后一天的思路详解
Dec 20 #Javascript
js正则匹配多个全部数据问题
Dec 20 #Javascript
微信小程序按顺序同步执行的两种方式
Dec 20 #Javascript
Vuex实现数据共享的方法
Dec 20 #Javascript
React 实现车牌键盘的示例代码
Dec 20 #Javascript
jquery实现商品sku多属性选择功能(商品详情页)
Dec 20 #jQuery
JavaScript实现简单计算器功能
Dec 19 #Javascript
You might like
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
使用PHP实现密保卡功能实现代码&amp;lt;打包下载直接运行&amp;gt;
2011/10/09 PHP
php获取表单中多个同名input元素的值
2014/03/20 PHP
php+mysqli实现批量替换数据库表前缀的方法
2014/12/29 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
2015/01/29 PHP
Zend Framework入门教程之Zend_Session会话操作详解
2016/12/08 PHP
PHP空值检测函数与方法汇总
2017/11/19 PHP
php微信开发之关键词回复功能
2018/06/13 PHP
jquery下组织javascript代码(js函数化)
2010/08/25 Javascript
解决3.01版的jquery.form.js中文乱码问题的解决方法
2012/03/08 Javascript
解析jQuery与其它js(Prototype)库兼容共存
2013/07/04 Javascript
nodejs教程之异步I/O
2014/11/21 NodeJs
如何在node的express中使用socket.io
2014/12/15 Javascript
超赞的动手创建JavaScript框架的详细教程
2015/06/30 Javascript
jsp 网站引入外部css或者js失效问题解决
2016/10/31 Javascript
Angular2生命周期钩子函数的详细介绍
2017/07/10 Javascript
jQuery实现键盘回车搜索功能
2017/07/25 jQuery
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
VUE2.0 ElementUI2.0表格el-table自适应高度的实现方法
2018/11/28 Javascript
[01:01:25]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第三局
2016/02/27 DOTA
[01:13:08]2018DOTA2亚洲邀请赛4.6 淘汰赛 mineski vs LGD 第二场
2018/04/10 DOTA
[52:03]Secret vs VG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python Mysql数据库操作 Perl操作Mysql数据库
2009/01/12 Python
python中zip()方法应用实例分析
2016/04/16 Python
python3使用腾讯企业邮箱发送邮件的实例
2019/06/28 Python
python 将字符串中的数字相加求和的实现
2019/07/18 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
青年文明号复核材料
2014/02/11 职场文书
国旗下的演讲稿
2014/05/08 职场文书
组织生活会发言材料
2014/12/15 职场文书
实习护士自荐信
2015/03/25 职场文书
nginx前后端同域名配置的方法实现
2021/03/31 Servers
一篇文章搞懂python混乱的切换操作与优雅的推导式
2021/08/23 Python
Python3的进程和线程你了解吗
2022/03/16 Python
在MySQL中你成功的避开了所有索引
2022/04/20 MySQL
Mybatis 一级缓存和二级缓存原理区别
2022/09/23 Java/Android