Advertisement
Guest User

Untitled

a guest
Oct 20th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.53 KB | None | 0 0
  1. import { useState, useLayoutEffect } from 'react'
  2.  
  3. const useWindowSize = () => {
  4. const [windowSize, setWindowSize] = useState([null, null])
  5.  
  6. useLayoutEffect(() => {
  7. window.addEventListener('resize', (e) => {
  8. setWindowSize([window.innerWidth, window.innerHeight])
  9. })
  10.  
  11. setWindowSize([window.innerWidth, window.innerHeight])
  12.  
  13. return () => window.removeEventListener('resize', (e) => {
  14. setWindowSize([window.innerWidth, window.innerHeight])
  15. })
  16. }, [])
  17.  
  18. return { windowSize }
  19. }
  20.  
  21. export default useWindowSize
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement