自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Vue3 如何封裝一個(gè)合格的獲取驗(yàn)證碼組件

開發(fā) 前端
我們需要寫一個(gè) useCountDown 的 Hooks ,來(lái)編寫倒計(jì)時(shí)的邏輯~大家在風(fēng)中組件的時(shí)候,要有這種習(xí)慣,就是把一些邏輯比較緊密的代碼抽取到一個(gè) Hooks 中去。

獲取驗(yàn)證碼組件

最近封裝了一個(gè) 獲取驗(yàn)證碼 的組件,雖然算是一個(gè)比較小的組件,但是還是感覺比較有意思的,大致效果如下:

圖片圖片

最基礎(chǔ)的組件

我們可以從簡(jiǎn)單的開始,先實(shí)現(xiàn)一個(gè)比較簡(jiǎn)單基礎(chǔ)的組件,后面再去完善它,最基礎(chǔ)的代碼如下:

圖片圖片

這個(gè)時(shí)候可以看到這個(gè)組件的雛形已經(jīng)出來(lái)了!

圖片圖片

實(shí)現(xiàn)倒計(jì)時(shí)

接下來(lái)我們需要寫一個(gè) useCountDown 的 Hooks ,來(lái)編寫倒計(jì)時(shí)的邏輯~大家在風(fēng)中組件的時(shí)候,要有這種習(xí)慣,就是把一些邏輯比較緊密的代碼抽取到一個(gè) Hooks 中去。

注意:setState 是異步更新,所以想獲取最新值需要使用useRef。

圖片圖片

封裝完后可以到組件中去使用。

圖片圖片

這樣就能達(dá)到想要的倒計(jì)時(shí)效果,但是還是有很多不足,比如按鈕沒有禁用,而且尺寸不能自定義,也沒有響應(yīng)式把驗(yàn)證碼內(nèi)容暴露出去

圖片圖片

完善組件封裝

上面的組件封裝的太簡(jiǎn)單了,一個(gè)好的組件需要具有比較好的自定義性、拓展性,所以我們需要完善一下組件的封裝

可以把這個(gè)組件拆成兩個(gè)部分:

  • CountdownInput輸入框
  • CountButton按鈕

CountdownInput輸入框

圖片圖片

CountButton

圖片圖片

最終使用

圖片圖片

效果如下:

圖片 圖片

責(zé)任編輯:武曉燕 來(lái)源: 前端之神
相關(guān)推薦

2022-09-20 11:00:14

Vue3滾動(dòng)組件

2020-01-06 13:11:30

技術(shù)工具

2024-08-12 08:33:05

2010-01-08 13:46:30

VB.NET中文驗(yàn)證碼

2020-12-20 10:07:57

Canvas圖形驗(yàn)證碼javascript

2021-08-11 06:57:17

驗(yàn)證碼圖片顯示

2015-09-21 15:31:05

php實(shí)現(xiàn)驗(yàn)證碼

2022-10-17 08:03:47

封裝vue組件

2024-02-28 08:35:26

內(nèi)置組件Vue3頁(yè)面

2021-07-07 08:00:50

Vue3 router-linAppLink

2015-03-23 18:03:36

短信驗(yàn)證碼正則自動(dòng)填寫

2022-07-18 10:43:12

項(xiàng)目TienChinJava

2013-06-19 10:19:59

2022-07-27 08:40:06

父子組件VUE3

2023-12-08 08:02:40

開箱React?組件

2024-12-09 00:00:03

Vue3項(xiàng)目表單

2021-01-19 10:29:34

短信驗(yàn)證碼密碼

2022-02-11 07:10:15

驗(yàn)證碼

2024-01-22 04:15:00

Vue3組件開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)