这个项目能做什么
react-use 是一个开源的、可复用的 React Hooks 集合,其 README 将其描述为 libreact 项目的移植。它以 npm 包 `react-use` 形式分发,并在 Unlicense 许可下发布到公共领域。
README 将 hooks 分为几个组:
- 传感器:包括 useBattery、useGeolocation、useHover、useHash、useIdle、useIntersection、useKey/useKeyPress/useKeyboardJs/useKeyPressEvent、useLocation/useSearchParam、useLongPress、useMedia、useMediaDevices、useMotion、useMouse/useMouseHovered、useMouseWheel、useNetworkState、useOrientation、usePageLeave、useScratch、useScroll、useScrolling、useStartTyping、useWindowScroll、useWindowSize、useMeasure/useSize、createBreakpoint、useScrollbarWidth 和 usePinchZoom。
- UI:useAudio、useClickAway、useCss、useDrop/useDropArea、useFullscreen、useSlider、useSpeech、useVibrate 和 useVideo。
- 动画:useRaf、useInterval/useHarmonicIntervalFn、useSpring、useTimeout、useTimeoutFn、useTween 和 useUpdate。
- 副作用:useAsync/useAsyncFn/useAsyncRetry、useBeforeUnload、useCookie、useCopyToClipboard、useDebounce、useError、useFavicon、useLocalStorage、useLockBodyScroll、useRafLoop、useSessionStorage、useThrottle/useThrottleFn、useTitle 和 usePermission。
- 生命周期:useEffectOnce、useEvent、useLifecycles、useMountedState/useUnmountPromise、usePromise、useLogger、useMount、useUnmount、useUpdateEffect、useIsomorphicLayoutEffect 以及 compare-effect hooks(useDeepCompareEffect、useShallowCompareEffect、useCustomCompareEffect)。
- 状态:createMemo、createReducer、createReducerContext/createStateContext、useDefault、useGetSet、useGetSetState、useLatest、usePrevious、usePreviousDistinct、useObservable、useRafState、useSetState、useStateList、useToggle/useBoolean、useCounter/useNumber、useList、useMap、useSet、useQueue、useStateValidator、useStateWithHistory、useMultiStateValidator、useMediatedState、useFirstMountState、useRendersCount、createGlobalState 和 useMethods。
- 杂项:useEnsuredForwardedRef 和 ensuredForwardRef。
每个 hook 在 docs 目录下都有自己的文档文件,许多条目链接到项目的 Storybook 站点或 CodeSandbox 上托管的在线演示。README 还提供了文档的中文翻译链接,并注明该项目通过 Open Collective 获得支持。安装命令为 `npm i react-use`。
评论
0 评分人数达到10人后显示
登录后参与讨论。