strudel/repl/src/usePostMessage.mjs
2022-03-26 14:15:38 +01:00

12 lines
340 B
JavaScript

import { useEffect, useCallback } from 'react';
function usePostMessage(listener) {
useEffect(() => {
window.addEventListener('message', listener);
return () => window.removeEventListener('message', listener);
}, [listener]);
return useCallback((data) => window.postMessage(data, '*'), []);
}
export default usePostMessage;