【react-use】基本使用

简介

随着 React Hooks 的发展,各个团队都开始尝试使用 Hooks 代替 Class,Hooks 正逐渐成为 React 组件的主流写法。得益于 Hooks 的逻辑封装能力,我们可以将常见的逻辑封装起来,以减少代码复杂度。或者使用社区上别人封装的 Hooks,比如 react-use 等。react-use 是社区最流行的 Hooks 库

import {useToggle} from 'react-use'

传感器

useBattery — 跟踪设备电池状态。 
useGeolocation — 跟踪用户设备的地理位置状态。 
useHover and useHoverDirty — 跟踪鼠标悬停某个元素的状态。 
useIdle — 跟踪用户是否处于非活动状态。
useKey, useKeyPress, useKeyboardJs, 和 useKeyPressEvent — 追踪按键。 
useLocation — 跟踪页面导航栏的位置状态。
useMedia — 跟踪CSS媒体查询的状态。 
useMediaDevices — 跟踪连接的硬件设备的状态。
useMotion — 跟踪设备的运动传感器的状态。
useMouse and useMouseHovered — 跟踪鼠标位置的状态。 
useNetwork — 跟踪用户的互联网连接状态。
useOrientation — 跟踪设备屏幕方向的状态。
usePageLeave — 当鼠标离开页面边界时触发。
useScroll — 跟踪HTML元素的滚动位置。 
useSize — 跟踪HTML元素的维度。
useStartTyping — 检测用户何时开始输入。
useWindowScroll — 跟踪 窗口 滚动位置。 
useWindowSize — 跟踪 窗口 尺寸。 

用户界面

useAudio — 播放音频并公开其控件。 
useClickAway — 当用户点击目标区域外时触发回调。
useCss — 动态调整CSS。
useDrop and useDropArea — 跟踪文件,链接和复制粘贴。
useFullscreen — 全屏显示元素或视频。 
useSpeech — 从文本字符串合成语音。 
useVideo — 播放视频,跟踪其状态,以及公开播放控件。 
useWait — UI的复杂等待管理。

动画效果

useRaf — 在每个 requestAnimationFrame 上重新呈现组件。
useSpring — 根据弹簧动力学随时间插入数字。
useTimeout — 超时后返回true。
useTween — 重新渲染组件,同时补间01之间的数字。 
useUpdate — 返回一个回调,在调用时重新呈现组件。

副作用

useAsync — 解析一个 async 函数。
useAsyncFn — 异步函数的状态管理。
useAsyncRetry — useAsync 带有 retry()方法。
useBeforeUnload — 当用户尝试重新加载或关闭页面时显示浏览器警报。
useCopyToClipboard — 将文本复制到剪贴板。
useDebounce — 防抖函数。 
useFavicon — 设置页面的favicon。
useLocalStorage — 管理localStorage中的值。
useLockBodyScroll — 锁定body元素的滚动。
useSessionStorage — 管理sessionStorage中的值。
useThrottle and useThrottleFn — 节流一个函数。
useTitle — 设置页面标题。

生命周期

useEffectOnce — 仅运行一次的修改后的useEffect。
useEvent — 订阅事件。
useLifecycles — 调用mount和unmount回调。
useRefMounted — 跟踪组件是否已挂载。
usePromise — 仅在安装组件时解析promise。
useLogger — 在组件经历生命周期时登录控制台。
useMount — 调用mount回调。
useUnmount — 调用unmount回调。
useUpdateEffect — 仅在更新时运行一个effect。
useDeepCompareEffect — 运行一个effect通过深度比较其依赖项。

状态

createMemo — memoized hooks的工厂钩子。
useGetSet — 返回状态 getter get() 而不是原始状态。
useGetSetState — 就像 useGetSet 和 useSetState 有个孩子。
useObservable — 跟踪Observable的最新值。
useSetState — 创建类似this.setState的setState方法。
useToggle and useBoolean — 跟踪布尔值的状态。
useCounter and useNumber — 跟踪数字的状态。
useList — 跟踪数组的状态。
useMap — 跟踪对象的状态。
  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一颗不甘坠落的流星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值