useClickOutside
useClickOutside<
T>(ref,handler,options?):void
Defined in: src/hooks/useClickOutside/useClickOutside.ts:55
Fire a callback when a click occurs outside the referenced element(s).
Accepts either a single ref or an array of refs. The handler fires only when the click lands outside ALL provided refs — useful for popover + trigger pairs where clicking either should be considered “inside”.
Defaults to mousedown so the handler runs before click. SSR-safe;
cleans up on unmount and when enabled flips to false.
Type Parameters
Section titled “Type Parameters”T extends HTMLElement = HTMLElement
Parameters
Section titled “Parameters”RefObject<T | null> | RefObject<HTMLElement | null>[]
handler
Section titled “handler”(event) => void
options?
Section titled “options?”Returns
Section titled “Returns”void
Example
Section titled “Example”const ref = useRef<HTMLDivElement>(null);useClickOutside(ref, () => setOpen(false), { enabled: isOpen });
return <div ref={ref}>...</div>;