UNPKG

@rehooks/window-size

Version:

React hook for subscribing to window size

31 lines (24 loc) 619 B
'use strict'; let { useState, useEffect } = require('react'); function getSize() { return { innerHeight: window.innerHeight, innerWidth: window.innerWidth, outerHeight: window.outerHeight, outerWidth: window.outerWidth, }; } function useWindowSize() { let [windowSize, setWindowSize] = useState(getSize()); function handleResize() { setWindowSize(getSize()); } useEffect(() => { window.addEventListener('resize', handleResize); return () => { window.removeEventListener('resize', handleResize); }; }, []); return windowSize; } module.exports = useWindowSize;