iT邦幫忙

鐵人檔案

2022 iThome 鐵人賽
回列表
Modern Web

React Hook 不求人,建立自己的 Hook Libary 系列

建立自己的 React Hook Libary !
不想起手又是useState,不想又再寫一樣的handler,不想換專案發現怎麼沒有這個hook又要再整理,利用三十天解決自己的開發苦惱!

鐵人鍊成 | 共 30 篇文章 | 18 人訂閱 訂閱系列文 RSS系列文 團隊桌遊玩樂團
DAY 11

[DAY 11] 自己的Hook自己做!useDebounce 讓使用者慢~一~點~

前言 俗話說的好:Never trust user input,開發時設想好的流程,清楚的畫面,適當的輔助文字,使用者仍然還是會有「意想不到」的操作。 今天來...

2022-09-24 ‧ 由 Charlie 分享
DAY 12

[DAY 12] 自己的Hook自己做!能取消動作的 useEventControl!

前言 繼承上一篇 Never trust user input 的精神,有一種使用者也是操作迅速,彷彿在玩 OSU (如上圖,音樂遊戲),結果不小心按到「刪除...

2022-09-25 ‧ 由 Charlie 分享
DAY 13

[DAY 13] 自己的Hook自己做!useThroltte

debounce 都提到了,怎麼能不提 throltte 呢? 情境 在玩 Pokemon Go 打對戰的時候,有時候想著按快一點把對方打趴,殊不知再怎麼快,...

2022-09-26 ‧ 由 Charlie 分享
DAY 14

[DAY 14] 自己的Hook自己做!網頁常看到的 Dialog 其實不會自己關?!

情境是...要能「關」? 工作開發一陣子才發現有些習以為常的功能對別人來說很...陌生,像是網頁常常遇到的 Dialog / Modal (對話視窗),大部分...

2022-09-27 ‧ 由 Charlie 分享
DAY 15

[DAY 15] 自己的Hook自己做!useClickOutside 來把 Dialog 關起乃!

再續前一篇研究了一輪,這篇就來實作: DEMO 在這裡~~ 需求及描述 透過 Hook 可以達成: 點擊非指定元素時(即元素之外),能夠執行特定動作 以 D...

2022-09-28 ‧ 由 Charlie 分享
DAY 16

[DAY 16] 自己的Hook自己做!等等,請先登入!

情境 登入其實就是登入,恩。 如果覺得換個專案就要再弄一次登入很煩的話,這個也可以算是你的情境 XD 實際弄下來會是透過 Context 組成的 Provid...

2022-09-29 ‧ 由 Charlie 分享
DAY 17

[DAY 17] 自己的Hook自己做!AuthProvider 不是 Hook 吧?(上)

承接上篇,本篇要來實作簡單的登入功能。 期望登入是透過 JWT + localStorage 的方式來進行登入與保留登入的 token,並進一步搭配React...

2022-09-30 ‧ 由 Charlie 分享
DAY 18

# [DAY 18] 自己的Hook自己做!AuthProvider 不是 Hook 吧?(下)

承接上篇,已經把登入的畫面導向製作完成了,現在要進入核心的部分,也就是驗證啦! DEMO 在這裡~~~ 開始! 假資料 先來準備一組對應的假資料,實際上不會那麼...

2022-10-01 ‧ 由 Charlie 分享
DAY 19

[DAY 19] 自己的Hook自己做!useTabs 想開幾個頁籤都可以?! (上)

情境 前陣子碰到一個需求,希望使用者能夠一次閱覽多筆的訂單(比對資料、快速查看、或複製等操作),但又不想離開頁面,彈出視窗也不適合,於是逛來逛去就發現 Tab...

2022-10-02 ‧ 由 Charlie 分享
DAY 20

[DAY 20] 自己的Hook自己做!useTabs 想開幾個頁籤都可以?! (下)

承上篇,核心的 Tabs 其實已經建立好了,當內容不能呈現出來就不算真正的完成!因此本篇來看看要如何顯示對應的資料。 開始! 簡短回顧一下我們的 state...

2022-10-03 ‧ 由 Charlie 分享