commerce/components/layout/navbar/useOutsideClick.ts
2023-08-16 22:39:51 +02:00

9 lines
347 B
TypeScript

import { useEffect } from 'react';
export function useOutsideClick(ref: any, onClickOut: () => void, deps = []){
useEffect(() => {
const onClick = ({target}: any) => !ref?.contains(target) && onClickOut?.()
document.addEventListener("click", onClick);
return () => document.removeEventListener("click", onClick);
}, deps);
}