最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue實(shí)現(xiàn)手機(jī)號(hào)、驗(yàn)證碼登錄(60s禁用倒計(jì)時(shí))

 更新時(shí)間:2020年12月19日 16:33:13   作者:劉彤彤  
這篇文章主要介紹了Vue實(shí)現(xiàn)手機(jī)號(hào)、驗(yàn)證碼登錄(60s禁用倒計(jì)時(shí)),幫助大家更好的理解和使用vue,感興趣的朋友可以了解下

 最近在做一個(gè)Vue項(xiàng)目,前端通過(guò)手機(jī)號(hào)、驗(yàn)證碼登錄,獲取驗(yàn)證碼按鈕需要設(shè)置60s倒計(jì)時(shí)(點(diǎn)擊一次后,一分鐘內(nèi)不得再次點(diǎn)擊)。先看一下效果圖:

輸入正確格式的手機(jī)號(hào)碼后,“獲取驗(yàn)證碼”按鈕方可點(diǎn)擊;點(diǎn)擊“獲取驗(yàn)證碼”后,按鈕進(jìn)入60s倒計(jì)時(shí),效果圖如下:

 效果圖已經(jīng)有了,接下來(lái)就上代碼吧!

  • html
<el-button @click="getCode()" :class="{'disabled-style':getCodeBtnDisable}" :disabled="getCodeBtnDisable">{{codeBtnWord}}</el-button>
  • 數(shù)據(jù)data
data() {
     return {
        loginForm: {
            phoneNumber: '',
            verificationCode: '',
        },
        codeBtnWord: '獲取驗(yàn)證碼', // 獲取驗(yàn)證碼按鈕文字
        waitTime:61, // 獲取驗(yàn)證碼按鈕失效時(shí)間
    }
}
  • 計(jì)算屬性computed
computed: {
    // 用于校驗(yàn)手機(jī)號(hào)碼格式是否正確
    phoneNumberStyle(){
        let reg = /^1[3456789]\d{9}$/
        if(!reg.test(this.loginForm.phoneNumber)){
            return false
        }
        return true
    },
    // 控制獲取驗(yàn)證碼按鈕是否可點(diǎn)擊
    getCodeBtnDisable:{
        get(){
            if(this.waitTime == 61){
                if(this.loginForm.phoneNumber){
                    return false
                }
                return true
            }
            return true
        },
        // 注意:因?yàn)橛?jì)算屬性本身沒有set方法,不支持在方法中進(jìn)行修改,而下面我要進(jìn)行這個(gè)操作,所以需要手動(dòng)添加
        set(){} 
    }
}

關(guān)于上面給計(jì)算屬性添加set方法,可以參照//m.fzitv.net/article/202496.htm

  •  css設(shè)置不可點(diǎn)擊時(shí)置灰
.el-button.disabled-style {
    background-color: #EEEEEE;
    color: #CCCCCC;
}
  • mothods中添加獲取驗(yàn)證碼方法
getCode(){
    if(this.phoneNumberStyle){
        let params = {}
        params.phone = this.loginForm.phoneNumber
        // 調(diào)用獲取短信驗(yàn)證碼接口
        axios.post('/sendMessage',params).then(res=>{
            res = res.data
            if(res.status==200) {
                this.$message({
                    message: '驗(yàn)證碼已發(fā)送,請(qǐng)稍候...',
                    type: 'success',
                    center:true
                })
            }
        })
        // 因?yàn)橄旅嬗玫搅硕〞r(shí)器,需要保存this指向
        let that = this
        that.waitTime--
        that.getCodeBtnDisable = true
        this.codeBtnWord = `${this.waitTime}s 后重新獲取`
        let timer = setInterval(function(){
            if(that.waitTime>1){
                that.waitTime--
                that.codeBtnWord = `${that.waitTime}s 后重新獲取`
            }else{
                clearInterval(timer)
                that.codeBtnWord = '獲取驗(yàn)證碼'
                that.getCodeBtnDisable = false
                that.waitTime = 61
            }
        },1000)
    }
}

通過(guò)上面的代碼,就可以實(shí)現(xiàn)了,如有錯(cuò)誤,敬請(qǐng)指正!

以上就是Vue實(shí)現(xiàn)手機(jī)號(hào)、驗(yàn)證碼登錄(60s禁用倒計(jì)時(shí))的詳細(xì)內(nèi)容,更多關(guān)于vue 手機(jī)號(hào)驗(yàn)證碼登錄的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Vue中l(wèi)ocalstorage和sessionstorage的使用

    詳解Vue中l(wèi)ocalstorage和sessionstorage的使用

    這篇文章主要介紹了詳解Vue中l(wèi)ocalstorage和sessionstorage的使用方法和經(jīng)驗(yàn)心得,有需要的朋友跟著小編參考學(xué)習(xí)下吧。
    2017-12-12
  • Vue列表頁(yè)渲染優(yōu)化詳解

    Vue列表頁(yè)渲染優(yōu)化詳解

    這篇文章主要為大家詳細(xì)介紹了Vue列表頁(yè)渲染優(yōu)化的操作,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • vue 使用iView組件中的Table實(shí)現(xiàn)定時(shí)自動(dòng)滾動(dòng)效果

    vue 使用iView組件中的Table實(shí)現(xiàn)定時(shí)自動(dòng)滾動(dòng)效果

    要在css中設(shè)置table的高度,使數(shù)據(jù)過(guò)多時(shí)出現(xiàn)滾動(dòng)條,將縱向設(shè)置為overflow-y: auto;橫向設(shè)置隱藏 overflow-x: hidden,接下來(lái)通過(guò)本文介紹vue使用iView組件中的Table實(shí)現(xiàn)定時(shí)自動(dòng)滾動(dòng)效果,需要的朋友可以參考下
    2024-05-05
  • Vue實(shí)現(xiàn)驗(yàn)證碼功能

    Vue實(shí)現(xiàn)驗(yàn)證碼功能

    這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)驗(yàn)證碼功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • vue接入下載文件接口問題

    vue接入下載文件接口問題

    這篇文章主要介紹了vue接入下載文件接口問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 使用vue進(jìn)行Lodop打印的一些常用方法小結(jié)

    使用vue進(jìn)行Lodop打印的一些常用方法小結(jié)

    這篇文章主要給大家介紹了關(guān)于使用vue進(jìn)行Lodop打印的一些常用方法,需要進(jìn)行打印功能,Lodop就是實(shí)現(xiàn)需求的插件,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • vue3+vite+ts?通過(guò)svg-sprite-loader?插件使用自定義圖標(biāo)的詳細(xì)步驟

    vue3+vite+ts?通過(guò)svg-sprite-loader?插件使用自定義圖標(biāo)的詳細(xì)步驟

    這篇文章主要介紹了vue3+vite+ts通過(guò)svg-sprite-loader插件使用自定義圖標(biāo),本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • Vue v2.4中新增的$attrs及$listeners屬性使用教程

    Vue v2.4中新增的$attrs及$listeners屬性使用教程

    這篇文章主要給大家介紹了關(guān)于Vue v2.4中新增的$attrs及$listeners屬性的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • vue-treeselect顯示unknown的問題及解決

    vue-treeselect顯示unknown的問題及解決

    這篇文章主要介紹了vue-treeselect顯示unknown的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Vue2.0點(diǎn)擊切換類名改變樣式的方法

    Vue2.0點(diǎn)擊切換類名改變樣式的方法

    今天小編就為大家分享一篇Vue2.0點(diǎn)擊切換類名改變樣式的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08

最新評(píng)論

城固县| 巴彦淖尔市| 新丰县| 芦山县| 敦化市| 隆昌县| 兴和县| 沂水县| 姚安县| 平南县| 阿巴嘎旗| 洛隆县| 玉屏| 翼城县| 如东县| 望奎县| 齐齐哈尔市| 屏边| 故城县| 交城县| 共和县| 林西县| 阿拉尔市| 抚顺县| 东乡县| 淮南市| 磐安县| 东兴市| 西吉县| 田阳县| 岑溪市| 潜山县| 淮安市| 尉犁县| 乐东| 高清| 察隅县| 来凤县| 介休市| 托里县| 马鞍山市|