UNPKG

@ima/react-page-renderer

Version:

IMA.js React page renderer.

26 lines (25 loc) 684 B
import { useEffect, useMemo } from 'react'; import { useComponentUtils } from './componentUtils'; export function useDispatcher(event, listener) { const { $Dispatcher } = useComponentUtils(); useEffect(()=>{ if (event && listener) { $Dispatcher.listen(event, listener); } return ()=>{ if (event && listener) { $Dispatcher.unlisten(event, listener); } }; }, [ $Dispatcher, event, listener ]); return useMemo(()=>({ fire: (...params)=>$Dispatcher.fire(...params) }), [ $Dispatcher ]); } //# sourceMappingURL=dispatcher.js.map