
npm i使用hooks-ts
Usehooks()。TS是一个用打字稿编写和易于使用的React Hooks库。它提供了一组钩子,使您能够更快地构建React应用程序。钩子建立在干燥原理上(不要重复自己)。您可能需要的大多数常见用例有钩子。
该库的设计最小。它是完全摇晃的(使用ESM版本),这意味着您只会导入所需的钩子,其余的将从捆绑包中删除,从而使使用此库可忽略不计。大多数钩子经过广泛的测试,并在生产环境中使用。
import { useLocalStorage } from 'usehooks-ts'
function Component ( ) {
const [ value , setValue ] = useLocalStorage ( 'my-localStorage-key' , 0 )
// ...
} useBoolean - 处理有用的实用程序功能的布尔态。useClickAnyWhere - 在文档中的任何地方处理单击事件。useCopyToClipboard - 使用剪贴板API将文本复制到剪贴板。useCountdown - 管理倒计时。useCounter - 管理一个以增量,减少,重置和setCount功能的计数器。useDarkMode - 返回暗模式的当前状态。useDebounceCallback - 创建拒绝版本的回调函数。useDebounceValue - 返回提供的值的拒绝版本,以及更新它的函数。useDocumentTitle - 设置文档标题。useEventCallback - 创建一个记忆的事件回调。useEventListener - 将事件听众附加到DOM元素,窗口或媒体查询列表。useHover - 跟踪是否徘徊在DOM元素上。useIntersectionObserver使用交叉点观察者API跟踪DOM元素与其包含元素或视口的交点。useInterval - 创建一个间隔,该间隔使用SetInterval API在指定的延迟下调用回调函数。useIsClient - 确定代码是否在客户端(浏览器中)运行。useIsMounted - 确定该组件当前是否已安装。useIsomorphicLayoutEffect基于环境(客户端或服务器端)使用USELAYOUTEFFECT或USEFECT。useLocalStorage - 使用LocalStorage API跨页重新加载持续状态。useMap - 使用Setter操作管理键值映射状态。useMediaQuery - 使用Match Media API跟踪媒体查询的状态。useOnClickOutside在指定元素之外单击句柄。useReadLocalStorage - 读取来自LocalStorage的值,与Uselocalstorage()密切相关。useResizeObserver - 使用ResizeObserver API观察元素的大小。useScreen - 跟踪屏幕尺寸和属性。useScript - 动态加载脚本并跟踪其加载状态。useScrollLock - 一种自定义挂钩,可锁定和解锁滚动。useSessionStorage API在跨页重新加载中持久状态。useStep在多步骤过程中管理和导航步骤之间。useTernaryDarkMode管理局部存储支持的三元(系统,深色,光线)暗模式。useTimeout - 使用Settimeout API处理React组件中的超时。useToggle管理React组件中的布尔式切换状态。useUnmount - 卸下组件时,请运行清理功能。useWindowSize - 跟踪窗口的大小。 非常感谢我们所有的支持者! [成为支持者]
哨兵 | katt | Adhi Ravishankar | 伟大的工作 |
非常感谢我们所有的贡献者! [成为贡献者]
朱利安 ? ? ? | A777Med | nguyen tien dat | Elias Cohenca ? | JoãoDeroldo ? | nishit | 乔恩·科普斯(Jon Koops) |
孤独的 | 维克多 ? ? | 布鲁诺·克莱蒙(Bruno Clermont) | Yoannesbourg ? | 奇怪2x ? | 杰森·皮肯斯(Jason Pickens) ? | Sel-Vin Kuik ? |
以撒 ? | Bruno RZN ? | 内森·曼科(Nathan Manceaux-Panot) ? | Dien Vu ? | Oleg Kusov ? | 马修·盖伊(Matthew Guy) ? | 安德鲁比 ? |
Lancepollard ? | Mukul Bansal ? | Jean-Luc Mongrain Sur la Brosse ? | NIC ? | 丹·伍德 | Jo Wendenbuerger ? | 安德鲁·诺森科(Andrew Nosenko) ? |
Charliejhonsmith | Sullivan Senechal ? ? | 杰森·朗 ? | KXM766 ? | 昆汀 ? ? | 丹尼尔·拉扎尔(Daniel Lazar) ? | 马克·特雷尔 ? |
安德烈亚斯群 ? | Sonjoy Datta | 伊利亚·贝尔斯基(Ilya Belsky) ? | 詹姆斯·巴雷特 | abbalyouness | Didriklind | HEXP1989 |
阿尔瓦罗·塞拉诺(Alvaro Serrano) ? | EgehanDülger | Pablolion ? | 大卫·桑切斯(David Sanchez) ? | 阿杰·拉贾(Ajay Raja) ? | 安迪·梅尔斯金(Andy Merskin) ? | Avirup Ghosh ? |
SanneWintrén ? | 亚历山德罗 ? | 安德烈·塔塔伦科(Andrey Tatarenko) ? | 安东·鲁萨克(Anton Rusak) ? | Mahmood Bagheri | Anver Sadutt ? | Bogdan Ailincai |
Simeon Griggs ? | kepro ? | 杰克·利普特 ? | tu nguyen anh ? | 卢克·希尔斯(Luke Shiels) ? | Sergei Kolyago ? | Adham Akmal Azmi ? |
Alek Kowalczyk ? | 肖恩·卡拉汉(Sean Callahan) ? | 约书亚·比恩(Joshua Bean) ? | 蒂姆·赵 ? | 帕特里克 ? | 布莱斯·多恩(Bryce Dorn) | angusd3v |
Davide Di Simone ? | 杰克·赫灵顿 ? | Avi Sharvit ? | 尼古拉(Nicolae)出现 ? | Shardul Aeer ? | Herlon Aguiar ? | 亚历克西斯·奥尼 ? |
Curtvict | JosuéCortina ? | Alex / Katt | Mourad El Cadi ? | 詹姆斯·胡琳娜 ? | 马修·海尔伍德(Matthew Hailwood) ? | 迈克尔·诺里(Michael Norrie) ? |
瓦伦丁政治 | Marnus Weststrate | mancuoj ? | 聊天Sumlin | 欧文·豪普(Owen Haupt) ? ? | ubarbaxor | 迈克尔·莫尔(Michael Mior) ? ? |
皮埃尔 | 哈利b ? | 瓦莱丽 ? | 史蒂文·瓦肯(Steven Vachon) | 肖恩·柯比(Sean Kirby) | Alecsander Farias | 拉胡尔·米什拉(Rahul Mishra) ? ? |
科比·史密斯 ? | 罗布·汉尼 | Hooriza ? | Shansenanayake | 菲利普·格林(Philip Ghering) | Ladislas Dellinger | 哈夫 |
Lisandro | Amir Hossein Rezaei | 尼古拉斯·麦基安(Nicolas Macian) ? | 内特·福赛斯(Nate Forsyth) | 卫星 ? | 费德里科·帕尼科(Federico Panico) | 威廉·佩恩 |
mihai ? | Habib Ogunsola ? | 灰犁 | 丹尼尔·图鲁(Daniel Turu) | 拉胡尔·乔杜里(Rahul Chaudhary) ? ? | 约书亚·奥乔沃(Joshua Ojoawo) ? ? | 杰克 |
乔恩·林克斯(Jon Linkens) ? | 钟珍哦 ? | 蒂恩·李 | 拉尔斯·阿特曼(Lars Artmann) ? | Kbobovskiy | 凯瑟琳·冈萨雷斯(Kathryn Gonzalez) ? | Yaroslav Chapelskyi ? |
塞缪尔·范·埃尔斯(Samuel Van Erps) ? | Ojolowoblue ? | Andrii Kostenko | 阿基姆·艾伦 ? | Trongbinhnguyen ? | Aniruddha Sil | 박찬혁 ? |
阿尼 | 雨果·胡特里 ? | Balz Guenat | Ottergeorge | Samay Sagar ? | 佩德罗·里斯本(Pedro Lisboa) ? | Henrique Malheiros ? |
凯文·纽曼(Kevin Newman) | A503189 ? | Mourad El Cadi | Pedro Henrique Lopes | Danbi Lee | 康纳·詹宁斯 | 卢卡斯·戈麦斯(Lucas Gomes) ? |
马丁·扎戈拉(Martin Zagora) | KVD | 亚历克斯 | 凯西·克利夫兰 ? | Avirup Ghosh ? | Yabbal | 克雷格·帕蒂克(Craig Patik) ? |
Soldeplata Saketos Candela | Tendouzhi ? | Marcin Wachulski ? | 萨尔曼·法扎尔(Salman Fazal) ? | 耸耸肩 ? | 霍诺里 ? | Eleazar“ E” Ramos ? |
retnag ? | J Young Lee ? | 菲利普·魏斯 ? | Marius Gundersen ? | Syed Aman Ali ? | Axel Ingadi ? | Andyp ? |
Ishanvaghasiya ? | Nico Martinucci ? | Shiv Bhonde | shivbhonde.eth ? | Fritzmonkey ? | Rodrigo Mesquita ? | Moshe Simantov ? | 贝卡 ? |
阿卜杜拉·阿尔卡瑟(Abdallah Alkaser) ? | 卡尔·史密斯 ? | 奥兰多·格罗波(Orlando Groppo) ? | MartijnSaly ? | 奎因·沙纳汉(Quinn Shanahan) ? | Antoine Kingue ? | Žanžlender ? |
塞巴斯蒂安·多明格斯(Sebastian Dominguez) ? | 詹姆斯·考恩 ? | Bayram Ali Basgul ? | 怀亚特·卡斯塔内达(Wyatt Castaneda) ? | 蒂姆·内维尔 ? | 托马斯·皮帕雷利(Thomas Pigarelli) ? | 詹姆斯·赫德曼 ? |
Grzegorz Pociejewski ? | RenéVerheij ? | Patrykkuniczak ? | PaoloBožac ? | rein ? | 地板 ? | XUAN吊死 ? |
莫纳瓦尔·阿卜杜拉(Monawwar Abdullah) ? | Haroldo de Oliveira Pinheiro ? | 塔姆吉德·艾哈迈德(Tamjid Ahmed) ? | JV-Lopez ? | 卡勒姆·麦克雷(Callum Macrae) ? | Bywater529 ? | 凯文他 ? |
弗雷德里克科斯 ? | 乔纳森·乔勒姆·莱莫斯(Jonathan“ Jonlem” Lemos) ? | Xegulon ? | 汤姆·史密斯利(Tom Smedley) ? | Lightbluepoppy ? | 德里克·奥瓦尔(Derek Oware) ? | Lance Gliser ? |
J. Lewis ? | Yair ? | Nishchit ? | 德弗 ? | 乔什·盖特(Josh Guyette) ? | 多拉·李 ? | 克里斯蒂安·杰拉德森(Kristian Gerardsson) ? |
詹姆斯·鲍威尔 ? | Boaz Poolman ? | Roker15 ? | 菲迪尔·艾哈迈德(Fadhil Ahmad) ? | 钱德勒·祖(Chandler-Zhu) ? | Nghi Nguyen ? | Shravan Sunder ? |
约翰内斯5 ? | Sebahhpeya ? | 或纳卡什 ? | Erez Makavy ? | 安迪·梅尔斯金(Andy Merskin) ? | ChainaLert机器人 ? | 泰勒·摩根 ? |
Wisdomabioye ? | SamuelQuiñones ? | 曼努埃尔 ? | Yurii Rybak ? | Yury Demin ? | 乔恩·图克斯伯里(Jon Tewksbury) ? | 诺瓦克·丹尼斯(Novac Denis) ? |
Kyrylo-soulandwolf ? | Miguel Isidoro | Yuriy Gromchenko | 雅各布·悍马 ? | Kyrylo Melnychuk ? | Luma | Eliya Cohen |
伊戈尔·苏卡尔夫(Igor Sukharev) ? | Pookmish ? | metav-drimz ? | luckrnx09 | Hubert Kuczmierczyk ? ? | Dandubya | 达尔维什 |
乔纳森·拉乌尔特(Jonathan Raoult) ? ? |
该项目遵循全构造物规范(表情符号密钥)。欢迎任何形式的贡献!
如果您发现此软件有帮助,请考虑捐款。任何金额都非常感谢。
BTC: bc1qwys40tnd0lxf9lr9l0t6xc63dpxyucj4x4nay0
ETH: 0x36a85155a8300754C56395D5af24553FB18915D6
该项目已获得MIT许可。