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 相关文章推荐
使用户点击后退按钮使效三行代码
Jul 07 Javascript
奇妙的js
Sep 24 Javascript
你需要知道的10个最佳javascript开发实践小结
Apr 15 Javascript
你必须知道的Javascript知识点之&quot;this指针&quot;的应用
Apr 23 Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
Nov 22 Javascript
一道JS前端闭包面试题解析
Dec 25 Javascript
js中使用使用原型(prototype)定义方法的好处详解
Jul 04 Javascript
Jquery与Bootstrap实现后台管理页面增删改查功能示例
Jan 22 Javascript
Vue.js中关于侦听器(watch)的高级用法示例
May 02 Javascript
解决antd日期选择组件,添加value就无法点击下一年和下一月问题
Oct 29 Javascript
javascript实现放大镜功能
Dec 09 Javascript
解决vue使用vant轮播组件swipe + flex时文字抖动问题
Jan 07 Vue.js
使用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
无线电广播与收音机发展的历史回眸
2021/03/02 无线电
php中session退出登陆问题
2014/02/27 PHP
非常实用的PHP常用函数汇总
2014/12/17 PHP
Javascript对象属性方法汇总
2013/11/21 Javascript
使用jquery实现放大镜效果
2014/09/02 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
2015/07/21 Javascript
详解Javascript事件驱动编程
2016/01/03 Javascript
深入浅析AngularJS和DataModel
2016/02/16 Javascript
VUE开发一个图片轮播的组件示例代码
2017/03/06 Javascript
利用forever和pm2部署node.js项目过程
2017/05/10 Javascript
微信小程序封装http访问网络库实例代码
2017/05/24 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
vue2.5.2使用http请求获取静态json数据的实例代码
2018/02/27 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
详解Vue.directive 自定义指令
2019/03/27 Javascript
js实现图片跟随鼠标移动效果
2019/10/16 Javascript
vue 中几种传值方法(3种)
2019/11/12 Javascript
解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题
2020/07/28 Javascript
详解python的ORM中Pony用法
2018/02/09 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
Python 获取中文字拼音首个字母的方法
2018/11/28 Python
解决Python2.7中IDLE启动没有反应的问题
2018/11/30 Python
pandas分别写入excel的不同sheet方法
2018/12/11 Python
对python调用RPC接口的实例详解
2019/01/03 Python
python浪漫表白源码
2019/04/05 Python
TensorFlow keras卷积神经网络 添加L2正则化方式
2020/05/22 Python
Python数据相关系数矩阵和热力图轻松实现教程
2020/06/16 Python
纽约州一群才华横溢的金匠制作而成:Hearth Jewelry
2019/03/22 全球购物
法国在线药房:DoctiPharma
2020/10/21 全球购物
行政经理的岗位职责
2013/11/23 职场文书
专业技术职务聘任书
2014/03/29 职场文书
读书活动总结范文
2014/04/26 职场文书
意外伤害赔偿协议书范文
2014/09/23 职场文书
2014年精神文明工作总结
2014/12/23 职场文书
nginx负载功能+nfs服务器功能解析
2022/02/28 Servers
Redis如何使用乐观锁(CAS)保证数据一致性
2022/03/25 Redis