vue中倒计时组件的实例代码


Posted in Javascript onJuly 06, 2018

子组件:

<template> 
 <span :endTime="endTime" :callback="callback" :endText="endText"> 
  <slot> 
   {{content}} 
  </slot> 
 </span> 
</template> 
<script> 
 export default { 
  data(){ 
   return { 
   content: '', 
   } 
  }, 
  props:{ 
   endTime:{ 
    type: String, 
    default :'' 
   }, 
   endText:{ 
    type : String, 
    default:'已结束' 
   }, 
   callback : { 
    type : Function, 
    default :'' 
   } 
  }, 
  mounted () { 
   this.countdowm(this.endTime) 
  }, 
  methods: { 
   countdowm(timestamp){ 
   let self = this; 
   let timer = setInterval(function(){ 
    let nowTime = new Date(); 
    let endTime = new Date(timestamp * 1000); 
    let t = endTime.getTime() - nowTime.getTime(); 
    if(t>0){ 
     let day = Math.floor(t/86400000); 
     let hour=Math.floor((t/3600000)%24); 
     let min=Math.floor((t/60000)%60); 
     let sec=Math.floor((t/1000)%60); 
     hour = hour < 10 ? "0" + hour : hour; 
     min = min < 10 ? "0" + min : min; 
     sec = sec < 10 ? "0" + sec : sec; 
     let format = ''; 
     if(day > 0){ 
      format = `${day}天${hour}小时${min}分${sec}秒`; 
     }  
     if(day <= 0 && hour > 0 ){ 
      format = `${hour}小时${min}分${sec}秒`;  
     } 
     if(day <= 0 && hour <= 0){ 
      format =`${min}分${sec}秒`; 
     } 
     self.content = format; 
     }else{ 
      clearInterval(timer); 
      self.content = self.endText; 
      self._callback(); 
     } 
     },1000); 
    }, 
    _callback(){ 
    if(this.callback && this.callback instanceof Function){ 
      this.callback(...this); 
     } 
   } 
  } 
 } 
</script>

父组件:

<count-down endTime="1590761620" :callback="callback" endText="已经结束了"></count-down> 
methods:{
callback:function(){
}
}

总结

以上所述是小编给大家介绍的vue中倒计时组件的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript动态添加、修改、删除对象的属性与方法详解
Jan 27 Javascript
JavaScript自定义等待wait函数实例分析
Mar 23 Javascript
js实现鼠标滑过文字链接色彩变化的效果
May 06 Javascript
javascript新闻跑马灯实例代码
Jul 29 Javascript
浅谈jQuery为哪般去掉了浏览器检测
Aug 29 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
Nov 04 Javascript
几种tab切换详解
Feb 03 Javascript
Javascript中八种遍历方法的执行速度深度对比
Apr 25 Javascript
js实现城市级联菜单的2种方法
Jun 23 Javascript
基于Vue中点击组件外关闭组件的实现方法
Mar 06 Javascript
微信小程序实现的自定义分享功能示例
Feb 12 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
Jun 26 Javascript
微信小程序websocket实现聊天功能
Mar 30 #Javascript
vue中锚点的三种方法
Jul 06 #Javascript
Angularjs中date过滤器失效的问题及解决方法
Jul 06 #Javascript
详解Angular如何正确的操作DOM
Jul 06 #Javascript
微信小程序WebSocket实现聊天对话功能
Jul 06 #Javascript
JavaScript实现的简单Tab点击切换功能示例
Jul 06 #Javascript
vue结合axios与后端进行ajax交互的方法
Jul 06 #Javascript
You might like
怎样在php中使用PDF文档功能
2006/10/09 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
laravel admin实现分类树/模型树的示例代码
2020/06/10 PHP
Javascript !!的作用
2008/12/04 Javascript
直接在JS里创建JSON数据然后遍历使用
2014/07/25 Javascript
详谈JavaScript内存泄漏
2014/11/14 Javascript
如何编写高质量JS代码(续)
2015/02/25 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
2015/08/31 Javascript
Node.js 实现简单小说爬虫实例
2016/11/18 Javascript
JavaScript使用FileReader实现图片上传预览效果
2020/03/27 Javascript
Vue.directive()的用法和实例详解
2018/03/04 Javascript
JS实现获取当前所在周的周六、周日示例分析
2019/05/11 Javascript
VsCode与Node.js知识点详解
2019/09/05 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
2020/08/17 Javascript
[55:04]海涛DOTA2死魂复燃6.82版本介绍
2014/09/28 DOTA
[00:43]2016完美“圣”典风云人物:单车宣传片
2016/12/02 DOTA
python中base64加密解密方法实例分析
2015/05/16 Python
Python正则表达式知识汇总
2017/09/22 Python
unittest+coverage单元测试代码覆盖操作实例详解
2018/04/04 Python
python+pandas分析nginx日志的实例
2018/04/28 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
Python面向对象程序设计多继承和多态用法示例
2019/04/08 Python
Python实现通过解析域名获取ip地址的方法分析
2019/05/17 Python
python 模拟贷款卡号生成规则过程解析
2019/08/30 Python
Python内置类型性能分析过程实例
2020/01/29 Python
python实现文字版扫雷
2020/04/24 Python
AVON雅芳官网:世界上最大的美容化妆品公司之一
2016/11/02 全球购物
美国专注于健康商品的网站:eVitamins
2017/01/23 全球购物
科颜氏美国官网:Kiehl’s美国
2017/01/31 全球购物
没有孩子的离婚协议书怎么写
2014/09/17 职场文书
无房证明样本
2015/06/17 职场文书
2016年“我们的节日·重阳节”主题活动总结
2016/04/01 职场文书
Python基础之元组与文件知识总结
2021/05/19 Python
Python 多线程处理任务实例
2021/11/07 Python
Python必备技巧之字符数据操作详解
2022/03/23 Python
MySQ InnoDB和MyISAM存储引擎介绍
2022/04/26 MySQL