因为产品说需要取服务器的时间戳,所以nowTime是从服务器取的当前时间戳,没有这个要求可以用new Date().getTime()代替;

组件代码

<template><div class="DayDown"><span>{{ dayString }}</span><span>{{ hourString }}</span><span>{{ minuteString }}</span><span>{{ secondString }}</span></div>
</template>
<script>
export default {data () {return {day: '',hour: '',minute: '',second: '',promiseTimer: ''};},props: {endTime: {default: ''},nowTime: {default: ''}},watch: {endTime (val, old) {if (val !== old) {this.DayDown();}}},mounted () {this.DayDown();},methods: {DayDown () {clearInterval(this.promiseTimer);this.promiseTimer = setInterval(() => {const remainTime = this.endTime - this.nowTime;if (remainTime >= 0) {this.day = Math.floor(remainTime / (60 * 60 * 24));this.hour = Math.floor(remainTime / 60 / 60 % 24);this.minute = Math.floor((remainTime % 3600) / 60);this.second = Math.floor((remainTime % 3600) % 60);this.$emit('subtract');} else {this.day = 0;this.hour = 0;this.minute = 0;this.second = 0;this.$emit('end');clearInterval(this.promiseTimer);}}, 1000);},formatNum (num) {if (num) {return num < 10 ? '0' + num : '' + num;} else {return '00';}}},computed: {dayString () {return this.formatNum(this.day);},hourString () {return this.formatNum(this.hour);},minuteString () {return this.formatNum(this.minute);},secondString () {return this.formatNum(this.second);}}
};
</script>
<style scoped>
.DayDown span{padding: 5px;background-color: #000;color: #fff;border-radius: 4px;
}
</style>

父组件代码

<template><div><<day-down :endTime="info.startTime / 1000" v-if="info.endTime&& nowTime" @end="getSaleDetail" :nowTime="nowTime / 1000" @subtract="subtract"></day-down></div>
</template><script>
import DayDown from '../components/DayDown.vue';
export default {components: { DayDown },data () {return {nowTime: null,info: {}};},mounted () {},methods: {// 传给组件的时间戳是秒// getSaleDetail是刷新数据方法// 减当前时间戳subtract () {this.nowTime += 1000;},}
};
</script>

VUE组件日时分秒倒计时相关推荐

  1. 【js】日时分秒倒计时

    <div class="widgetDock" style="height: 5px;"><!-- 倒计时 --><div cla ...

  2. 时分秒倒计时的js实现

    时分秒倒计时的js实现 2016年06月01日 11:51:45 阅读数:6587 时分秒倒计时的js实现,如图: 闲话少说,直接上代码. html代码: <div id="timer ...

  3. linux脚本计时,Linux用脚本实现“时分秒“倒计时功能

    1.怎样实现"时分秒"倒计时 在Linux下,脚本的完成相对于C语言来说稍微随意一点,可以按照字的想法写,只要有逻辑就可以了. 示例: 注意: clean的功能 这个命令将会刷新屏 ...

  4. linux 多线程实现倒计时,Linux用脚本实现“时分秒“倒计时功能

    1.怎样实现"时分秒"倒计时 在Linux下,脚本的完成相对于C语言来说稍微随意一点,可以按照字的想法写,只要有逻辑就可以了. 示例: 注意: clean的功能 这个命令将会刷新屏 ...

  5. android 万能倒计时,时分秒倒计时

    1.工具类 /*** 作者:created by meixi* 邮箱:15913707499@163.com* 日期:2018/12/28 15*/public class TimerUtil {pr ...

  6. android倒计时动画特效,Android仿活动时分秒倒计时效果

    本文实例为大家分享了Android时分秒倒计时效果的具体代码,供大家参考,具体内容如下 从mian.xml下手: xmlns:tools="http://schemas.android.co ...

  7. php 日期相减 时分秒,PHP计算两个时间戳间隔的日时分秒的代码实例

    关于PHP计算两个时间戳之间相差的日时分秒的代码 下面是PHP计算两个时间戳间隔的日时分秒的代码实例的相关内容,文章教程主要讲述与时间戳 间隔 分秒 相关的一些技术与知识,更多的内容欢迎大家访问htt ...

  8. 商城倒计时(时分秒倒计时、分秒毫秒倒计时)

    1.布局用法  引用项目coutdowntimelibrary的CountDownView 如下 <carraydraw.com.coutdowntimelibrary.countdown.Co ...

  9. java 秒转换日期_Java 将日期或秒数转换为日时分秒

    ```java import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; / ...

最新文章

  1. 用C#计算1000以内含1的数字
  2. 十二、Spark MLlib机器学习
  3. c++ map iterator 获取key_Java集合框架——Map接口
  4. 安全编程: 防止缓冲区溢出
  5. 【桶排】小 X 的密码破译
  6. 目前市场上主流服务器厂商,目前市场上流行的串口服务器有哪些功能
  7. 拼装机器人感想_智能机器人心得体会
  8. Java 虚拟机 最易理解的 全面解析
  9. 2699元起!格力首款5G手机悄然上架:骁龙765G处理器
  10. scratch python插件_Scratch3.0设计的插件系统(上篇)
  11. 智头条:小米第二家汽车公司成立; 华为发布7款智慧生活新品;萤石视频锁携手电影《门锁》今日上映
  12. pyserial查看串口
  13. Docker安装ElasticSearch 版本7.6.2
  14. 山东职业学院计算机专业,山东职业学院最好的专业是什么(10大热门专业排名)...
  15. WIFI6比WIFI5好在哪里呢?
  16. JSP网上图书商城项目管理系统
  17. 华为云解锁云原生数据库发展新动能
  18. pcl小知识(十一)——对StatisticalOutlierRemoval的理解
  19. ctfshow XSS web316-web333 wp
  20. 龙王传说古月_龙王传说:小舞对古月娜不满,婆媳关系紧张,这四点让她难以接受...

热门文章

  1. Swift学习笔记 (四十二) 不透明类型
  2. 高并发如何处理,解决方案
  3. 螳螂捕蝉、黄雀在后——从一个成语谈观察家模式
  4. android 啦窗帘的动画,android 下拉窗帘效果
  5. excel怎么按照年月日时分秒的格式以每隔一个小时进行填充序列
  6. 藏书馆App基于Rainbond实现云原生DevOps的实践
  7. 五国启动税务执法联盟以解决加密货币网络犯罪威胁
  8. win10设置窗口背景
  9. Markdown的常用语法(个人总结)
  10. Java发起GET请求的二三事