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 RuntimeObject() 获取ie里面自定义函数或者属性的集合
Nov 23 Javascript
js选取多个或单个元素的实现代码(用class)
Aug 22 Javascript
Javascript对象属性方法汇总
Nov 21 Javascript
jquery操作select详解(取值,设置选中)
Feb 07 Javascript
jQuery使用andSelf()来包含之前的选择集
May 19 Javascript
JS中使用sort结合localeCompare实现中文排序实例
Jul 23 Javascript
js实现简单的左右两边固定广告效果实例
Apr 10 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
Sep 06 Javascript
js如何打印object对象
Oct 16 Javascript
JS验证图片格式和大小并预览的简单实例
Oct 11 Javascript
Vue中使用vee-validate表单验证的方法
May 09 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
Jul 26 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递归获取目录内所有文件的实现方法
2016/11/01 PHP
PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
2017/06/16 PHP
firefox中用javascript实现鼠标位置的定位
2007/06/17 Javascript
js confirm()方法的使用方法实例
2013/07/13 Javascript
JavaScript表格常用操作方法汇总
2015/04/15 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
JS+CSS实现仿雅虎另类滑动门切换效果
2015/10/13 Javascript
Jquery easyui 实现动态树
2015/11/17 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
详解vue-cli构建项目反向代理配置
2017/09/07 Javascript
详解基于Vue+Koa的pm2配置
2017/10/24 Javascript
node文字生成图片的示例代码
2017/10/26 Javascript
详解基于electron制作一个node压缩图片的桌面应用
2019/01/29 Javascript
Vue.js项目实战之多语种网站的功能实现(租车)
2019/08/07 Javascript
Emberjs 通过 axios 下载文件的方法
2019/09/03 Javascript
Vue触发input选取文件点击事件操作
2020/08/07 Javascript
Python写的一个简单监控系统
2015/06/19 Python
python实现文本文件合并
2015/12/29 Python
浅谈python中copy和deepcopy中的区别
2017/10/23 Python
基于python中的TCP及UDP(详解)
2017/11/06 Python
Python用imghdr模块识别图片格式实例解析
2018/01/11 Python
Python中列表与元组的乘法操作示例
2018/02/10 Python
python 中字典嵌套列表的方法
2018/07/03 Python
python3 pillow模块实现简单验证码
2019/10/31 Python
使用Pandas将inf, nan转化成特定的值
2019/12/19 Python
Miller Harris官网:英国小众香水品牌
2020/09/24 全球购物
幼儿园教师工作制度
2014/01/22 职场文书
环境保护标语
2014/06/20 职场文书
毕业生找工作自荐书
2014/06/30 职场文书
班级体育活动总结
2014/07/05 职场文书
雨中的树观后感
2015/06/03 职场文书
早恋主题班会
2015/08/14 职场文书
2016春季幼儿园开学寄语
2015/12/03 职场文书
高中地理教学反思
2016/02/19 职场文书
《爬天都峰》教学反思
2016/02/23 职场文书
船舶调度指挥系统——助力智慧海事
2022/02/18 无线电