国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Ahooks 3.0 來了!高質(zhì)量可靠的 React Hooks 庫

開發(fā) 前端
ahooks v3.0 的 slogan 是“高質(zhì)量可靠的 React Hooks 庫”,這是我們?yōu)橹畩^斗的目標(biāo),希望 ahooks 成為每一位開發(fā)者的必備基礎(chǔ)庫之一。

[[439200]]

ahooks[1] 是一套開源的 React Hooks 庫,封裝了大量好用的 Hooks。在當(dāng)前 React 項目研發(fā)過程中,一套好用的 React Hooks 庫是必不可少的,希望 ahooks 能成為您的選擇。

自 2019 年 8 月 ahooks(umi hooks)發(fā)布第一個版本,到今天已經(jīng)歷經(jīng)了 2 年的發(fā)展,在國內(nèi)外社區(qū)也獲得了很多同學(xué)的認(rèn)可。目前 ahooks 2.0 的成績主要包括:

在阿里內(nèi)部覆蓋了上千個前端應(yīng)用

  • 開發(fā)了 60+ Hooks
  • npm & tnpm 周下載量 7w+
  • GitHub star 7.4k

在這兩年的發(fā)展過程中,隨著對 React Hooks 的理解越來越深入,我們能看到 ahooks 2.0 設(shè)計中的很多不足。在這個背景下,我們決定開發(fā) 3.0 版本。

ahooks 3.0 的目標(biāo)是建設(shè) 高質(zhì)量可靠的 React Hooks 庫,我們希望成為像 lodash 一樣的穩(wěn)定的基礎(chǔ)依賴。相較于 2.0,具有以下幾個優(yōu)勢:

  • 全面支持 SSR
  • 全新的 useRequest
  • 所有的輸出函數(shù)地址是固定的,避免閉包問題
  • DOM 類 Hooks 支持 target 動態(tài)變化
  • 更合理的 API 設(shè)計
  • 解決了在嚴(yán)格模式(Strict Mode)下的問題
  • 解決了在 react-refresh(HRM)模式下的問題
  • 新增了更多 Hooks
  • 修復(fù)了很多已知問題

全面支持 SSR

React Hooks 在 SSR 場景下,普遍會碰到“DOM/BOM 缺失”、“useLayoutEffect 警告”兩個問題。ahooks v3.0 徹底解決了這兩個問題,你可以安心的將 ahooks 使用到 SSR 場景了。

更多內(nèi)容可以參考《React Hooks & SSR[2]》

全新的 useRequest

useRequest 是 ahooks 使用量最高的 Hook,同時也是 issue 量最多的 Hook??偨Y(jié) useRequest 之前最大的問題是:

  • 代碼拆分不合理,所有的功能混合在一個文件中,改動起來非常復(fù)雜
  • 部分功能上線前沒有充分論證,導(dǎo)致功能設(shè)計不合理,但是也下不掉
  • 融合了 pagination 和 loadMore 的邏輯,導(dǎo)致 ts 類型復(fù)雜到難以想象

ahooks v3.0 版本對 useRequest 進(jìn)行了完全重寫:

  • 通過插件式組織代碼,核心代碼極其簡單,所有高級功能均是通過插件實現(xiàn)
  • 仔細(xì)論證了提供的所有的能力,保證上線的特性均是最優(yōu)解。對存疑的能力,漸進(jìn)添加
  • 所有的參數(shù)支持動態(tài)變化
  • 刪除了 pagination 和 loadMore 邏輯,單獨拆分出其它 Hooks 提供相應(yīng)能力
  • 避免了 ts 類型重載,可以更方面的基于 useRequest 封裝更高級的 Hooks
  • 修復(fù)了大量遺留問題

更多內(nèi)容可以參考《全新的 useRequest[3]》

函數(shù)特殊處理,避免閉包問題

ahooks v3 通過對輸入輸出函數(shù)做特殊處理,盡力幫助大家避免閉包問題。這個能力我覺得是 ahooks 做的比較激進(jìn)的地方,但確實能對用戶提供非常好的使用體驗。

1.ahooks 所有的輸出函數(shù),地址都是不會變化的

  1. const [state, setState] = React.useState(); 

眾所周知,React.useState 返回的 setState 函數(shù)地址是固定的,使用時不需要考慮奇奇怪怪的問題,不需要把 setState 放到各種依賴中。ahooks v3.0 所有 Hooks 返回的函數(shù),都擁有和 setState 一樣的特性,地址不會變化,放心大膽的使用即可。

2.所有用戶輸入的函數(shù),永遠(yuǎn)使用最新的一份

對于接收的函數(shù),ahooks v3 會做一次特殊處理,保證每次調(diào)用的函數(shù)永遠(yuǎn)是最新的。

  1. const [state, setState] = useState(); 
  2.  
  3. useInterval(() => { 
  4.   console.log(state); 
  5. }, 1000); 

比如以上示例,useInterval 任何時候調(diào)用的函數(shù)永遠(yuǎn)是最新的,也就是 state 永遠(yuǎn)是最新的。

更多內(nèi)容可以參考《ahooks 輸入輸出函數(shù)處理規(guī)范[4]》

更多問題修復(fù)

  • DOM 類 Hooks 支持 target 動態(tài)變化,相關(guān)文檔可見《DOM 類 Hooks 使用規(guī)范[5]》
  • v3 修復(fù)了在嚴(yán)格模式下的一些問題。參考《React Hooks & strict mode[6]》
  • v3 修復(fù)了在 react-refresh(HRM)模式下的一些問題。參考《React Hooks & react-refresh(HMR)[7]》

更多改動參考《v2 to v3[8]》

結(jié)尾

ahooks v3.0 的 slogan 是“高質(zhì)量可靠的 React Hooks 庫”,這是我們?yōu)橹畩^斗的目標(biāo),希望 ahooks 成為每一位開發(fā)者的必備基礎(chǔ)庫之一。

感謝 ahooks 的共建者和使用者!歡迎試用 v3.0!

  1. $ npm install --save ahooks@next 
  2. or 
  3. $ yarn add ahooks@next 

文檔:https://ahooks.js.org/zh-CN[9]

源碼:https://github.com/alibaba/hooks[10]

參考資料

[1]ahooks: https://github.com/alibaba/hooks

[2]React Hooks & SSR: https://ahooks.js.org/zh-CN/guide/blog/SSR/

[3]全新的 useRequest: https://ahooks.js.org/zh-CN/guide/upgrade#%E5%85%A8%E6%96%B0%E7%9A%84-userequest

[4]ahooks 輸入輸出函數(shù)處理規(guī)范: https://ahooks.js.org/zh-CN/guide/blog/function

[5]DOM 類 Hooks 使用規(guī)范: https://ahooks.js.org/zh-CN/guide/dom

[6]React Hooks & strict mode: https://ahooks.js.org/zh-CN/guide/blog/strict

[7]React Hooks & react-refresh(HMR): https://ahooks.js.org/zh-CN/guide/blog/hmr

[8]v2 to v3: https://ahooks.js.org/zh-CN/guide/upgrade

[9]https://ahooks.js.org/zh-CN: https://ahooks.js.org/zh-CN

[10]https://github.com/alibaba/hooks: https://github.com/alibaba/hooks

 

責(zé)任編輯:姜華 來源: 前端技術(shù)磚家
相關(guān)推薦

2022-08-09 13:22:26

Hooksreactvue

2017-07-14 09:54:47

代碼函數(shù)程序

2021-08-08 14:26:24

SQL數(shù)據(jù)庫開發(fā)

2011-05-31 13:43:46

外鏈

2012-09-13 10:44:18

Python代碼

2011-03-04 10:11:09

JavascriptAPI

2023-07-06 14:51:30

開發(fā)高質(zhì)量軟件

2015-08-25 08:29:11

編寫高質(zhì)量命名

2024-03-07 11:39:24

HadolintDockerfile工具

2015-08-03 10:40:59

程序員代碼質(zhì)量Quora

2011-12-29 15:02:27

JavaScript

2025-07-01 00:45:00

2022-10-24 08:10:21

SQL代碼業(yè)務(wù)

2015-08-25 08:42:36

高質(zhì)量代碼命名

2019-05-06 15:20:31

華為

2020-09-18 07:57:10

代碼編碼開發(fā)

2023-10-15 12:07:09

2015-08-19 08:54:23

Android開發(fā)框架

2011-07-20 15:26:52

C++
點贊
收藏

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

国产精品少妇自拍| 日韩av网站导航| 一区二区三区四区视频在线观看| 午夜先锋成人动漫在线| 尤物tv国产一区| av美女在线观看| 91精品国产综合久久久久久久久久 | 男女男精品视频网| 99精品国产高清在线观看| 日韩片欧美片| 国产精品欧美久久久| 国产精品午夜av| 国产做受高潮69| 婷婷久久综合九色综合99蜜桃| 在线观看国产精品91| 国产伦理精品| 亚洲精品国产品国语在线| 99riav在线| 欧美精品久久一区| 96国产粉嫩美女| av漫画网站| 日产精品久久久久久久性色| 影视一区二区三区| 欧美成人精品三级网站| 国产乱理伦片在线观看夜一区| 日本不卡一区二区三区在线观看| 亚洲三级色网| 色狠狠久久av五月综合| 日韩影院精彩在线| 亚洲国产一区二区三区在线| 免费亚洲电影在线| 日本一道在线观看| 99国产精品国产精品久久| www.日日操| 欧美日韩美女视频| 国产原创视频在线观看| 亚洲福利影片在线| 日韩毛片一区| 欧美日本黄视频| 九九亚洲视频| 精品久久久久久亚洲| 国产酒店精品激情| 91av影院| 欧美精品三级日韩久久| 欧美xoxoxo| 66m—66摸成人免费视频| 天天射天天综合网| 亚洲精品成人自拍| 国产精品久久久久影视| 在线视频1区2区| 亚洲人高潮女人毛茸茸| 精品女人视频| 狠狠色狠狠色综合人人| 成人福利视频在线| 在线观看国产视频| 亚洲黄色片网站| 色综合久久中文| 欧美一区二区三区在线免费观看| 91网站在线播放| 第九色区av在线| 亚洲男人第一av网站| 香蕉一区二区| 奇米视频888战线精品播放| 91亚洲男人天堂| 理论在线观看| 视频一区视频二区国产精品| 禁断一区二区三区在线| 国产免费色视频| 一区二区三区91| 成人国产二区| 国产精品视频专区| 国内精品视频666| 一区二区三区视频国产日韩| 亚洲性日韩精品一区二区| 911精品美国片911久久久 | 台湾天天综合人成在线| 97se亚洲综合在线| gogogo免费视频观看亚洲一| www.亚洲免费| 久久免费国产视频| 免费美女久久99| 最近最新中文字幕在线| 视频在线这里都是精品| 欧美视频一区二区在线观看| 欧美日韩伦理片| 99视频在线观看一区三区| 自拍亚洲欧美老师丝袜| 久久精品卡一| 久久天天东北熟女毛茸茸| 蜜臀av性久久久久蜜臀aⅴ流畅| 99热成人精品热久久66| 日韩一卡二卡三卡| 亚洲瘦老头同性70tv| 一级二级三级欧美| 91福利在线导航| 欧美日韩一区二区三区不卡视频| 欧美日韩一区在线播放| 亚洲午夜一区二区| 国产一区二区三区免费在线| 午夜精品一区二区三区四区| 精品成人国产在线观看男人呻吟| 电影91久久久| 西游记1978| 欧美二区在线观看| 成人女性视频| 久热精品在线观看视频| 国产一级揄自揄精品视频| 亚洲在线视频| av资源网站在线观看| 日韩美女av在线免费观看| 成人avav影音| 都市激情国产精品| 久久亚洲国产精品日日av夜夜| 午夜精品福利久久久| 久久激情av| 日本久久精品一区二区| 日韩三级成人av网| 盗摄精品av一区二区三区| 黄色污网站在线观看| 日韩经典在线视频| 337p亚洲精品色噜噜噜| 欧美体内she精视频在线观看| 在线观看污污视频| 欧美与黑人午夜性猛交久久久| 久久午夜电影网| 成人在线观看免费播放| 日韩a级在线观看| 亚洲性夜色噜噜噜7777| 精品中文字幕一区二区| 五月婷婷视频在线观看| 日本精品国语自产拍在线观看| 91精品国产欧美一区二区18| 亚洲国产99| 精品麻豆一区二区三区| 欧美二区在线| 亚洲国产91色在线| 国产在线精品免费av| 成人黄色视屏网站| 国产原创中文在线观看| 久久久久国色av免费观看性色| 中文字幕佐山爱一区二区免费| 精品产国自在拍| 在线免费黄色| 日韩欧美精品一区二区| 精品国产第一区二区三区观看体验 | 国产精品一区在线观看| 欧美日韩在线播| 久久久久久亚洲精品杨幂换脸| 精品极品在线| 8x8x华人在线| 欧美成人精品xxx| 国产精品久久看| 国产亚洲第一伦理第一区| 日韩a在线看| 久久久久久久久久久久久9999| 精品国产三级电影在线观看| 国产成人av一区二区| 北条麻妃一区二区三区在线观看 | 成人福利在线| 五月天国产一区| 美女扒开尿口让男人操亚洲视频网站| 国产精品久久久久aaaa樱花 | 欧美综合在线观看| 色噜噜狠狠成人中文综合| 99精品视频免费| 三级成人在线| 国产夫妻视频| 欧美日韩国产三区| 久久久999国产| 午夜精品久久久久| 久久99这里只有精品| 都市激情亚洲| 69av亚洲| 色婷婷综合久久久久中文字幕| 国产精品视频网站| 日韩色视频在线观看| 久久综合色之久久综合| 希岛爱理一区二区三区| 欧美电影免费观看高清完整| 免费观看的av网站| 亚洲欧美日韩另类精品一区二区三区 | 亚洲天堂影视av| 一区二区三区日韩精品| 丝袜美腿一区二区三区| 精品国产亚洲日本| 不卡在线视频| 一本大道熟女人妻中文字幕在线 | 亚洲免费av片| 亚洲免费av高清| 免费在线观看视频一区| 综合亚洲色图| 亚洲国产欧美日本视频| 在线免费观看黄色片| 欧美三级午夜理伦三级老人| 国产精品国产三级国产aⅴ浪潮| 欧美精品免费视频| 国产精品久久久久久妇女6080| 日韩成人一区二区| 91综合在线| 黄色日韩网站|