ScreenSize.js 601 B

123456789101112131415161718192021222324252627282930
  1. "use client";
  2. import { useEffect, useState } from "react";
  3. const useScreenSize = () => {
  4. const [screenSize, setScreenSize] = useState({
  5. width: null,
  6. height: null
  7. });
  8. useEffect(() => {
  9. const handleResize = () => {
  10. setScreenSize({
  11. width: window?.innerWidth,
  12. height: window?.innerHeight
  13. });
  14. };
  15. if (window) {
  16. handleResize();
  17. window.addEventListener("resize", handleResize);
  18. return () => {
  19. window.removeEventListener("resize", handleResize);
  20. };
  21. }
  22. }, []);
  23. return screenSize;
  24. };
  25. export default useScreenSize;