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 相关文章推荐
JS小框架 fly javascript framework
Nov 26 Javascript
输入密码检测大写是否锁定js实现代码
Dec 03 Javascript
jqGrid 学习笔记整理——进阶篇(一 )
Apr 17 Javascript
JS获取IMG图片高宽的简单实例
May 17 Javascript
基于JavaScript实现前端文件的断点续传
Oct 17 Javascript
详解闭包解决jQuery中AJAX的外部变量问题
Feb 22 Javascript
JavaScript实现鼠标滚轮控制页面图片切换功能示例
Oct 14 Javascript
Vue中对拿到的数据进行A-Z排序的实例
Sep 25 Javascript
angularjs1.X 重构controller 的方法小结
Aug 15 Javascript
p5.js临摹旋转爱心
Oct 23 Javascript
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
Feb 11 Javascript
Ajax实现异步加载数据
Nov 17 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
php对gzip文件或者字符串解压实例参考
2008/07/25 PHP
php 无法载入mysql扩展
2010/03/12 PHP
8个出色的WordPress SEO插件收集
2011/02/26 PHP
destoon设置自定义搜索的方法
2014/06/21 PHP
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
JavaScript 异步方法队列链实现代码分析
2010/06/05 Javascript
图片延迟加载的实现代码(模仿懒惰)
2013/03/29 Javascript
使用jquery解析XML的方法
2014/09/05 Javascript
angularjs指令中的compile与link函数详解
2014/12/06 Javascript
javascript文本模板用法实例
2015/07/31 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
JavaScript是如何实现继承的(六种方式)
2016/03/31 Javascript
AngularJS入门教程之AngularJS表达式
2016/04/18 Javascript
node.js中module.exports与exports用法上的区别
2016/09/02 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
ES2015 Symbol 一种绝不重复的值
2016/12/25 Javascript
JS实现异步上传压缩图片
2017/04/22 Javascript
原生JS进行前后端同构
2018/04/22 Javascript
浅谈Node.js 沙箱环境
2018/05/15 Javascript
vue filters的使用详解
2018/06/11 Javascript
vue 本地环境跨域请求proxyTable的方法
2018/09/19 Javascript
javascript中如何判断类型汇总
2019/05/14 Javascript
微信小程序和H5页面间相互跳转代码实例
2019/09/19 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
2020/07/22 Javascript
Python中使用异常处理来判断运行的操作系统平台方法
2015/01/22 Python
Python中使用tarfile压缩、解压tar归档文件示例
2015/04/05 Python
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
2017/02/14 Python
Python编程pygal绘图实例之XY线
2017/12/09 Python
pandas数据预处理之dataframe的groupby操作方法
2018/04/13 Python
Spring http服务远程调用实现过程解析
2020/06/11 Python
python 读txt文件,按‘,’分割每行数据操作
2020/07/05 Python
酒店服务与管理毕业生求职信
2013/11/02 职场文书
我爱我家教学反思
2014/05/01 职场文书
中学感恩教育活动总结
2015/05/05 职场文书
mybatis中sql语句CDATA标签的用法说明
2021/06/30 Java/Android