UNPKG

wavesurfer-react

Version:
25 lines (22 loc) 613 B
import { useRef, useEffect } from 'react'; function useRegionEvent(ref, eventName, callback) { const callbackRef = useRef(null); useEffect(()=>{ if (!ref) { return; } if (callback) { callbackRef.current = (...args)=>callback(ref, ...args); ref.on(eventName, callbackRef.current); } return ()=>{ callbackRef.current && ref.un(eventName, callbackRef.current); callbackRef.current = null; }; }, [ ref, eventName, callback ]); } export { useRegionEvent as default };