本文实例为大家分享了vue实现时间倒计时功能的具体代码,供大家参考,具体内容如下

需求:

做一个剩余支付时间倒计时的效果

效果图:

代码:

<template>
 <div>剩余支付时间:{{count}}</div>
</template>
<script>
export default {
    data() {
        return {
            count: '', //倒计时
            seconds: 864000 // 10天的秒数
        }
    },
    mounted() {
        this.time() //调用定时器
    },
    methods: {
        // 天 时 分 秒 格式化函数
        countdown() {
            let d = parseint(this.seconds / (24 * 60 * 60))
            d = d < 10 ? "0" + d : d
            let h = parseint(this.seconds / (60 * 60) % 24);
            h = h < 10 ? "0" + h : h
            let m = parseint(this.seconds / 60 % 60);
            m = m < 10 ? "0" + m : m
            let s = parseint(this.seconds % 60);
            s = s < 10 ? "0" + s : s
            this.count = d + '天' + h + '时' + m + '分' + s + '秒'
        },
        //定时器没过1秒参数减1
        time() {
            setinterval(() => {
                this.seconds -= 1
                this.countdown()
            }, 1000)
        },
    }
}
</script>

时间的秒数可以根据自己的需求进行修改

再为大家分享一段代码:vue时分秒倒计时

counttime: function () {
        //获取当前时间
        var date = new date();
        var now = date.gettime();
        //设置截止时间
        var enddate = new date("2018-10-22 23:23:23");
        var end = enddate.gettime();
        //时间差
        var lefttime = end - now;
        //定义变量 d,h,m,s保存倒计时的时间
        if (lefttime >= 0) {
                    d = math.floor(lefttime / 1000 / 60 / 60 / 24);
                    this.h = math.floor(lefttime / 1000 / 60 / 60 % 24);
                    this.m = math.floor(lefttime / 1000 / 60 % 60);
                    this.s = math.floor(lefttime / 1000 % 60);
         }
          console.log(this.s);
          //递归每秒调用counttime方法,显示动态时间效果
            settimeout(this.counttime, 1000);
 }