Skip to content

useClickOutside

Detects clicks outside an element. Useful for closing dropdowns, modals, or menus.

import { useClickOutside } from 'asterui'
function DropdownExample() {
const [isOpen, setIsOpen] = useState(false)
const ref = useClickOutside<HTMLDivElement>(() => setIsOpen(false))
return (
<div ref={ref}>
<Button onClick={() => setIsOpen(true)}>Open</Button>
{isOpen && <DropdownMenu>...</DropdownMenu>}
</div>
)
}
ParameterTypeDefaultDescription
handler(event: MouseEvent | TouchEvent) => void-Callback when click outside
enabledbooleantrueWhether the listener is active
TypeDescription
RefObject<T>Ref to attach to the element