vue實現(xiàn)倒計時功能
本文實例為大家分享了vue實現(xiàn)倒計時功能的具體代碼,供大家參考,具體內(nèi)容如下
通過父組件傳入的結(jié)束時間減去當前日期得到剩余時間
1.子組件部分
<div class="itemend"> <p class="itemss">倒計時<span>{{day}}</span>天<span>{{hour}}</span>時<span>{{minute}}</span>分<span>{{second}}</span>秒</p> </div>
代碼:
data() { return { day: "", //天 hour: "", //時 minute: "", //分 second: "", //秒 flag: false, }; }, mounted() { let time = setInterval(() => { if (this.flag == true) { clearInterval(time); } this.timeDown(); }, 500); }, props: { endTime: { type: String, }, }, methods: { timeDown() { const endTime = new Date(this.endTime); const nowTime = new Date(); let leftTime = parseInt((endTime.getTime() - nowTime.getTime()) / 1000); let d = parseInt(leftTime / (24 * 60 * 60)); let h = this.formate(parseInt((leftTime / (60 * 60)) % 24)); let m = this.formate(parseInt((leftTime / 60) % 60)); let s = this.formate(parseInt(leftTime % 60)); if (leftTime <= 0) { this.flag = true; this.$emit("time-end"); } this.day = d; //天 this.hour = h; //時 this.minute = m; //分 this.second = s; //秒 }, formate(time) { if (time >= 10) { return time; } else { return `0${time}`; } }, }
2.父組件引用
<template> <div> <Times :endTime='timeEnd'></Times> </div> </template> import Times from "@/components/time"; export default { name: "Home", data() { return { timeEnd: "2021-3-30 9:50" //結(jié)束時間(蘋果手機無法解析"-" 可以將格式改為2021/3/30) }, components: { Times, }, };
更多關(guān)于倒計時的文章請查看專題:《倒計時功能》
更多JavaScript時鐘特效點擊查看:JavaScript時鐘特效專題
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue在html標簽{{}}中調(diào)用函數(shù)的方法總結(jié)及對比
這篇文章主要給大家介紹了關(guān)于vue在html標簽{{}}中調(diào)用函數(shù)的方法總結(jié)及對比,文中通過實例代碼介紹的非常詳細,對大家學習或者使用vue具有一定的參考學習價值,需要的朋友可以參考下2023-03-03vue-cli項目如何使用vue-resource獲取本地的json數(shù)據(jù)(模擬服務(wù)端返回數(shù)據(jù))
這篇文章主要介紹了vue-cli項目如何使用vue-resource獲取本地的json數(shù)據(jù)(模擬服務(wù)端返回數(shù)據(jù)),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08Vue3.0導出數(shù)據(jù)為自定義樣式Excel的詳細實例
在許多的后臺系統(tǒng)中少不了導出Excel表格的功能,下面這篇文章主要給大家介紹了關(guān)于Vue3.0導出數(shù)據(jù)為自定義樣式Excel的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-06-06使用vue.js在頁面內(nèi)組件監(jiān)聽scroll事件的方法
今天小編就為大家分享一篇使用vue.js在頁面內(nèi)組件監(jiān)聽scroll事件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09Vue開發(fā)項目中如何使用Font Awesome 5
Font Awesome是一套流行的圖標字體庫,我們在實際開發(fā)的過程中會經(jīng)常遇到需要使用圖標的場景,對于一些常用的圖標,我們可以直接在Font Awesome中找到并且使用,這篇文章主要給大家介紹了關(guān)于Vue開發(fā)項目中如何使用Font Awesome5的相關(guān)資料,需要的朋友可以參考下2021-11-11