国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

基于vue的驗(yàn)證碼組件

pekonchan / 946人閱讀

摘要:最近在自己寫頁面,模仿思否論壇,然后寫登錄注冊的時(shí)候需要一個(gè)驗(yàn)證碼組件去搜一下沒找到什么合適的,而且大多都是基于后端的,于是自己手寫一個(gè)。

最近在自己寫頁面,模仿思否論壇,然后寫登錄注冊UI的時(shí)候需要一個(gè)驗(yàn)證碼組件. 去搜一下沒找到什么合適的,而且大多都是基于后端的,于是自己手寫一個(gè)。
演示

分析驗(yàn)證碼組件

分析驗(yàn)證碼功能

隨機(jī)出現(xiàn)的數(shù)字大小寫字母 (基礎(chǔ)功能)

不同的數(shù)字或者字母有不同的顏色 (功能優(yōu)化)

不同的數(shù)字或者字母有不同的字體大寫 (功能優(yōu)化)

不同的數(shù)字或者字母有不同的邊距 (功能優(yōu)化)

不同的數(shù)字或者字母有不同的傾斜角度 (功能優(yōu)化)

更多功能優(yōu)化...

分析組件功能

可以設(shè)置生成驗(yàn)證碼的長度 (基本功能)

可以設(shè)置驗(yàn)證碼組件的寬高 (基本功能)

編寫驗(yàn)證碼組件

template

最外層div綁定點(diǎn)擊事件,點(diǎn)擊后刷新驗(yàn)證碼。
span是單個(gè)驗(yàn)證碼的載體,樣式動態(tài)綁定

methods

refreshCode 刷新驗(yàn)證碼的方法
createdCode 生成驗(yàn)證碼的方法
getStyle 為每個(gè)元素生成動態(tài)的樣式

  methods: {
    refreshCode () {
      this.createdCode()
    },
    createdCode () {
      let len = this.length,
        codeList = [],
        chars = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz0123456789",
        charsLen = chars.length
      // 生成
      for (let i = 0; i < len; i++) {
        let rgb = [Math.round(Math.random() * 220), Math.round(Math.random() * 240), Math.round(Math.random() * 200)]
        codeList.push({
          code: chars.charAt(Math.floor(Math.random() * charsLen)), // 隨機(jī)碼
          color: `rgb(${rgb})`, // 隨機(jī)顏色
          fontSize: `1${[Math.floor(Math.random() * 10)]}px`, // 隨機(jī)字號
          padding: `${[Math.floor(Math.random() * 10)]}px`, // 隨機(jī)內(nèi)邊距
          transform: `rotate(${Math.floor(Math.random() * 90) - Math.floor(Math.random() * 90)}deg)` // 隨機(jī)旋轉(zhuǎn)角度
        })
      }
      // 指向
      this.codeList = codeList
      // 將當(dāng)前數(shù)據(jù)派發(fā)出去
      this.$emit("update:value", codeList.map(item => item.code).join(""))
    },
    // 動態(tài)綁定樣式
    getStyle (data) {
      return `color: ${data.color}; font-size: ${data.fontSize}; padding: ${data.padding}; transform: ${data.transform}`
    }
  }
完整代碼

使用

組件






源碼地址
演示地址 模仿思否寫的網(wǎng)站,點(diǎn)注冊可看到驗(yàn)證碼

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/101282.html

相關(guān)文章

  • 基于vue驗(yàn)證組件

    摘要:最近在自己寫頁面,模仿思否論壇,然后寫登錄注冊的時(shí)候需要一個(gè)驗(yàn)證碼組件去搜一下沒找到什么合適的,而且大多都是基于后端的,于是自己手寫一個(gè)。 最近在自己寫頁面,模仿思否論壇,然后寫登錄注冊UI的時(shí)候需要一個(gè)驗(yàn)證碼組件. 去搜一下沒找到什么合適的,而且大多都是基于后端的,于是自己手寫一個(gè)。 演示 showImg(https://segmentfault.com/img/bVbnyrp?w=...

    dingding199389 評論0 收藏0
  • 基于vue驗(yàn)證組件

    摘要:最近在自己寫頁面,模仿思否論壇,然后寫登錄注冊的時(shí)候需要一個(gè)驗(yàn)證碼組件去搜一下沒找到什么合適的,而且大多都是基于后端的,于是自己手寫一個(gè)。 最近在自己寫頁面,模仿思否論壇,然后寫登錄注冊UI的時(shí)候需要一個(gè)驗(yàn)證碼組件. 去搜一下沒找到什么合適的,而且大多都是基于后端的,于是自己手寫一個(gè)。 演示 showImg(https://segmentfault.com/img/bVbnyrp?w=...

    劉東 評論0 收藏0
  • mica 中驗(yàn)證擴(kuò)展 mica-captcha 驗(yàn)證組件

    摘要:生成驗(yàn)證碼圖形驗(yàn)證碼校驗(yàn)驗(yàn)證碼生成驗(yàn)證碼圖形驗(yàn)證碼校驗(yàn)驗(yàn)證碼生成其他類型驗(yàn)證碼生成圖片驗(yàn)證碼主要為或者前后端分離設(shè)計(jì)。校驗(yàn)圖片驗(yàn)證碼。 驗(yàn)證碼效果 showImg(https://segmentfault.com/img/remote/1460000018639417?w=108&h=40);showImg(https://segmentfault.com/img/remote/146...

    Vixb 評論0 收藏0
  • Vue2.0 仿滴滴出行項(xiàng)目

    摘要:仿滴滴出行項(xiàng)目最近,各大社區(qū)出現(xiàn)很多小伙伴的項(xiàng)目,趁著這股熱潮我也用擼了一個(gè)滴滴出行的項(xiàng)目。可是,后來在手機(jī)上發(fā)現(xiàn),輸入的時(shí)候居然調(diào)不出軟鍵盤,寫項(xiàng)目的時(shí)候沒考慮到設(shè)備問題,簡直是大大的失誤。也就是說可以在組件內(nèi)部進(jìn)行請求,不需要提交。 Vue2.0 仿滴滴出行項(xiàng)目 最近,各大社區(qū)出現(xiàn)很多小伙伴的vue項(xiàng)目,趁著這股熱潮我也用vue擼了一個(gè)滴滴出行的項(xiàng)目。 效果預(yù)覽 showImg(h...

    ShevaKuilin 評論0 收藏0
  • Vue2.0 + ElementUI 手寫權(quán)限管理系統(tǒng)后臺模板(一)——簡述

    摘要:簡介最近寫了一個(gè)基于權(quán)限管理系統(tǒng)的后臺模板,包含了正常項(xiàng)目開發(fā)所需的框架功能,開發(fā)者使用的時(shí)候只需要專注于項(xiàng)目的業(yè)務(wù)邏輯就好。同時(shí)接下來會讓你擁有一個(gè)自己完全掌控的框架。 簡介 最近寫了一個(gè)基于vue2.0+element-ui權(quán)限管理系統(tǒng)的后臺模板,包含了正常項(xiàng)目開發(fā)所需的框架功能,開發(fā)者使用的時(shí)候只需要專注于項(xiàng)目的業(yè)務(wù)邏輯就好。同時(shí)接下來會讓你擁有一個(gè)自己完全掌控的框架。 源碼地址...

    _ivan 評論0 收藏0

發(fā)表評論

0條評論

pekonchan

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<