diff --git a/src/app/hooks/index.js b/src/app/hooks/index.js new file mode 100644 index 0000000..68e6a53 --- /dev/null +++ b/src/app/hooks/index.js @@ -0,0 +1,20 @@ +import { useState, useEffect } from 'react'; + +export function useWindowDimensions() { + const getWindowDimensions = () => { + const { innerWidth: width, innerHeight: height } = window; + + return { width, height }; + }; + const [windowDimensions, setWindowDimensions] = useState(getWindowDimensions()); + + useEffect(() => { + const onRecize = () => setWindowDimensions(getWindowDimensions()); + + window.addEventListener('resize', onRecize); + + return () => window.removeEventListener('resize', onRecize); + }, []); + + return windowDimensions; +}