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 相关文章推荐
JavaScript 异步调用框架 (Part 4 - 链式调用)
Aug 04 Javascript
js比较和逻辑运算符的介绍
Mar 10 Javascript
javascript 手动给表增加数据的小例子
Jul 10 Javascript
javascript实现table选中的行以指定颜色高亮显示的方法
May 13 Javascript
node.js实现爬虫教程
Aug 25 Javascript
JQuery实现简单的服务器轮询效果实例
Mar 31 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
Jun 07 Javascript
源码分析Vue.js的监听实现教程
Apr 23 Javascript
jstree单选功能的实现方法
Jun 07 Javascript
清空元素html(&quot;&quot;) innerHTML=&quot;&quot; 与 empty()的区别和应用(推荐)
Aug 14 Javascript
vuex中使用对象展开运算符的示例
Sep 25 Javascript
Vue-Ant Design Vue-普通及自定义校验实例
Oct 24 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
第1次亲密接触PHP5(2)
2006/10/09 PHP
PHP 5.0 Pear安装方法
2006/12/06 PHP
PHP 地址栏信息的获取代码
2009/01/07 PHP
php $_SERVER当前完整url的写法
2009/11/12 PHP
用PHP代码在网页上生成图片
2015/07/01 PHP
PHP生成随机字符串(3种方法)
2015/09/25 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
2016/11/05 PHP
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
window.parent调用父框架时 ie跟火狐不兼容问题
2009/07/30 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
JavaScript中的闭包介绍
2015/03/15 Javascript
javascript中Function类型详解
2015/04/28 Javascript
jQuery旋转木马式幻灯片轮播特效
2015/12/04 Javascript
Bootstrap自定义文件上传下载样式
2016/05/26 Javascript
javascript中Date对象应用之简易日历实现
2016/07/12 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
2016/09/23 Javascript
vue 2.1.3 实时显示当前时间,每秒更新的方法
2018/09/16 Javascript
Jquery实现无缝向上循环滚动列表的特效
2019/02/13 jQuery
[46:20]TFT vs Secret Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python生成不重复随机值的方法
2015/05/11 Python
pycharm下查看python的变量类型和变量内容的方法
2018/06/26 Python
Python闭包函数定义与用法分析
2018/07/20 Python
python单例模式获取IP代理的方法详解
2018/09/13 Python
Python中numpy模块常见用法demo实例小结
2019/03/16 Python
python opencv 二值化 计算白色像素点的实例
2019/07/03 Python
python实现美团订单推送到测试环境,提供便利操作示例
2019/08/09 Python
python实现根据给定坐标点生成多边形mask的例子
2020/02/18 Python
python将logging模块封装成单独模块并实现动态切换Level方式
2020/05/12 Python
资生堂美国官网:Shiseido美国
2016/09/02 全球购物
乌克兰时尚鞋子和衣服购物网站:Born2be
2018/05/24 全球购物
会计找工作求职信范文
2013/12/09 职场文书
2014年新生军训方案
2014/05/01 职场文书
2014年网络管理员工作总结
2014/12/01 职场文书
Nginx解决403 forbidden的完整步骤
2021/04/01 Servers
springboot拦截器无法注入redisTemplate的解决方法
2021/06/27 Java/Android