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 相关文章推荐
jquery ajax中使用jsonp的限制解决方法
Nov 22 Javascript
jQuery filter函数使用方法
May 19 Javascript
jQuery中index()方法用法实例
Dec 27 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
Jun 19 Javascript
Jsonp post 跨域方案
Jul 06 Javascript
JS实现在状态栏显示打字效果完整实例
Nov 02 Javascript
jQuery解析XML 详解及方法总结
Sep 28 Javascript
BootStrap中
Dec 10 Javascript
详解Vue爬坑之vuex初识
Jun 14 Javascript
微信小程序排坑指南详解
May 23 Javascript
vue弹出框组件封装实例代码
Oct 31 Javascript
Vue3 响应式侦听与计算的实现
Nov 11 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
删除无限级目录与文件代码共享
2006/07/12 PHP
从php核心代码分析require和include的区别
2011/01/02 PHP
你可能不知道PHP get_meta_tags()函数
2014/05/12 PHP
Yii核心验证器api详解
2016/11/23 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
JQuery小知识
2010/10/15 Javascript
再谈javascript原型继承
2014/11/10 Javascript
javascript+html5实现仿flash滚动播放图片的方法
2015/04/27 Javascript
分享一个插件实现水珠自动下落效果
2016/06/01 Javascript
在JS中a标签加入单击事件屏蔽href跳转页面
2016/12/16 Javascript
JavaScript中最常用的10种代码简写技巧总结
2017/06/28 Javascript
vue中使用protobuf的过程记录
2018/10/26 Javascript
小程序实现列表点赞功能
2018/11/02 Javascript
jquery实现Ajax请求的几种常见方式总结
2019/05/28 jQuery
javascript实现的时间格式加8小时功能示例
2019/06/13 Javascript
js实现简单的随机点名器
2020/09/17 Javascript
python列表操作使用示例分享
2014/02/21 Python
Python的迭代器和生成器使用实例
2015/01/14 Python
TensorFlow实现简单卷积神经网络
2018/05/24 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
2019/08/15 Python
Python使用tkinter模块实现推箱子游戏
2019/10/08 Python
python使用正则来处理各种匹配问题
2019/12/22 Python
解决更改AUTH_USER_MODEL后出现的问题
2020/05/14 Python
python Xpath语法的使用
2020/11/26 Python
使用css实现android系统的loading加载动画
2019/07/25 HTML / CSS
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
Nordgreen英国官网:斯堪的纳维亚设计师手表
2018/10/24 全球购物
生物制药自我鉴定
2014/01/25 职场文书
接受捐赠答谢词
2014/01/27 职场文书
宾馆仓管员岗位职责
2014/07/27 职场文书
入股协议书范本
2014/11/01 职场文书
mysql知识点整理
2021/04/05 MySQL
pytorch 中nn.Dropout的使用说明
2021/05/20 Python
Java Dubbo框架知识点梳理
2021/06/26 Java/Android
JavaScript严格模式不支持八进制的问题讲解
2021/11/07 Javascript
Python如何使用循环结构和分支结构
2022/04/13 Python