point-dashboard/src/Hooks/useEventListener.tsx
KarimAldeen edf92d1a22 test
2024-04-03 12:14:43 +03:00

17 lines
468 B
TypeScript

import { useEffect, useRef } from "react";
export const useEventListener = (eventType:any, callback:any, element = window) => {
const callbackRef = useRef(callback);
useEffect(() => {
callbackRef.current = callback;
}, [callback]);
useEffect(() => {
const handler = (e:any) => callbackRef.current(e);
element.addEventListener(eventType, handler);
return () => element.removeEventListener(eventType, handler);
}, [eventType, element]);
};