source: sources/client/src/hooks/useIsMobile.js@ bc20307

Last change on this file since bc20307 was bc20307, checked in by Tasevski2 <39170279+Tasevski2@…>, 2 years ago

Push before video

  • Property mode set to 100644
File size: 612 bytes
Line 
1import { useState, useEffect } from 'react';
2
3const mobile_max_width = 480;
4
5const useIsMobile = () => {
6 const [width, setWidth] = useState(window.innerWidth);
7 const [isMobile, setIsMobile] = useState(width < mobile_max_width);
8 function handleWindowSizeChange() {
9 setWidth(window.innerWidth);
10 setIsMobile(window.innerWidth < mobile_max_width);
11 }
12 useEffect(() => {
13 window.addEventListener('resize', handleWindowSizeChange);
14 return () => {
15 window.removeEventListener('resize', handleWindowSizeChange);
16 };
17 }, []);
18
19 return {
20 isMobile,
21 };
22};
23
24export default useIsMobile;
Note: See TracBrowser for help on using the repository browser.