use-deep-compare-effect
shadcn-hooks/use-deep-compare-effectFreeHook
A hook to use a deep compare effect
Install it
npx shadcn@latest add https://shadcn-hooks.com/r/use-deep-compare-effect.jsonSource
1import { dequal } from 'dequal'2import { useRef } from 'react'3import { useIsomorphicLayoutEffect } from '@/registry/hooks/use-isomorphic-layout-effect'4import type { DependencyList, EffectCallback } from 'react'56export function useDeepCompareEffect(7 effect: EffectCallback,8 deps: DependencyList,9) {10 const ref = useRef<DependencyList>(deps)1112 if (!ref.current || !dequal(ref.current, deps)) {13 ref.current = deps14 }1516 useIsomorphicLayoutEffect(effect, ref.current)17}
What it pulls in
npm packages
Other registry items
Files it writes
More from shadcn-hooks
All 58 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| use-active-elementuse-active-element | shadcn-hooks | Hooks | Free | no deps | |
| use-batteryuse-battery | shadcn-hooks | Hooks | Free | no deps | |
| use-booleanuse-boolean | shadcn-hooks | Hooks | Free | no deps | |
| use-click-any-whereuse-click-any-where | shadcn-hooks | Hooks | Free | no deps | |
| use-click-awayuse-click-away | shadcn-hooks | Hooks | Free | no deps | |
| use-clipboarduse-clipboard | shadcn-hooks | Hooks | Free | no deps | |
| use-controllable-valueuse-controllable-value | shadcn-hooks | Hooks | Free | 1 dep | |
| use-counteruse-counter | shadcn-hooks | Hooks | Free | no deps |
