vue獲取驗(yàn)證碼倒計(jì)時(shí)組件
本文實(shí)例為大家分享了vue獲取驗(yàn)證碼倒計(jì)時(shí)組件,供大家參考,具體內(nèi)容如下
之前寫(xiě)過(guò)一個(gè)計(jì)時(shí)函數(shù),有計(jì)算誤差,但是驗(yàn)證碼的60秒倒計(jì)時(shí)可以忽略這一點(diǎn)點(diǎn)誤差。直接上代碼。

<template>
<div class="captcha-row">
<input class="captcha-input" placeholder="輸入驗(yàn)證碼" auto-focus />
<div v-if="showtime===null" class="captcha-button" @click="send">
獲取驗(yàn)證碼
</div>
<div v-else class="captcha-button">
{{showtime}}
</div>
</div>
</template>
<script>
export default {
data() {
return {
// 計(jì)時(shí)器,注意需要進(jìn)行銷毀
timeCounter: null,
// null 則顯示按鈕 秒數(shù)則顯示讀秒
showtime: null
}
},
methods: {
// 倒計(jì)時(shí)顯示處理
countDownText(s) {
this.showtime = `${s}s后重新獲取`
},
// 倒計(jì)時(shí) 60秒 不需要很精準(zhǔn)
countDown(times) {
const self = this;
// 時(shí)間間隔 1秒
const interval = 1000;
let count = 0;
self.timeCounter = setTimeout(countDownStart, interval);
function countDownStart() {
if (self.timeCounter == null) {
return false;
}
count++
self.countDownText(times - count + 1);
if (count > times) {
clearTimeout(self.timeCounter)
self.showtime = null;
} else {
self.timeCounter = setTimeout(countDownStart, interval)
}
}
},
send() {
this.countDown(60);
}
},
}
</script>
<style lang="less" scoped>
.captcha-row {
display: flex;
.captcha-button {
background: #048fff;
color: white;
display: flex;
justify-content: center;
align-items: center;
padding: 4rpx 8rpx;
width: 320rpx;
border-radius: 4rpx;
}
}
</style>
更多關(guān)于倒計(jì)時(shí)的文章請(qǐng)查看專題:《倒計(jì)時(shí)功能》
更多JavaScript時(shí)鐘特效點(diǎn)擊查看:JavaScript時(shí)鐘特效專題
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Vue實(shí)現(xiàn)手機(jī)號(hào)、驗(yàn)證碼登錄(60s禁用倒計(jì)時(shí))
- 基于vue實(shí)現(xiàn)圖片驗(yàn)證碼倒計(jì)時(shí)60s功能
- vue實(shí)現(xiàn)倒計(jì)時(shí)獲取驗(yàn)證碼效果
- Vue驗(yàn)證碼60秒倒計(jì)時(shí)功能簡(jiǎn)單實(shí)例代碼
- vue實(shí)現(xiàn)驗(yàn)證碼按鈕倒計(jì)時(shí)功能
- 簡(jiǎn)單實(shí)現(xiàn)vue驗(yàn)證碼60秒倒計(jì)時(shí)功能
- 基于vue的短信驗(yàn)證碼倒計(jì)時(shí)demo
- Vue寫(xiě)一個(gè)簡(jiǎn)單的倒計(jì)時(shí)按鈕功能
- vue實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí)按鈕
相關(guān)文章
vue3新擬態(tài)組件庫(kù)開(kāi)發(fā)流程之table組件源碼分析
這篇文章主要介紹了vue3新擬態(tài)組件庫(kù)開(kāi)發(fā)流程——table組件源碼,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04
Vue專屬狀態(tài)管理庫(kù)Pinia的使用與實(shí)踐分享
在 Vue 的開(kāi)發(fā)中,狀態(tài)管理是一個(gè)不可或缺的部分,尤其是在復(fù)雜的應(yīng)用中,組件之間的狀態(tài)共享和管理變得至關(guān)重要,Pinia 作為 Vue 的專屬狀態(tài)管理庫(kù),本文將深入介紹 Pinia 的基礎(chǔ)知識(shí)、核心功能以及實(shí)際使用場(chǎng)景,需要的朋友可以參考下2024-11-11
html中創(chuàng)建并調(diào)用vue組件的幾種方法匯總
這篇文章主要介紹了html中創(chuàng)建并調(diào)用vue組件的幾種方法匯總,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下2020-11-11
Vue之beforeEach非登錄不能訪問(wèn)的實(shí)現(xiàn)(代碼親測(cè))
這篇文章主要介紹了Vue之beforeEach非登錄不能訪問(wèn)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

