~firefoxreact-appvite-appsrcreduxhooks
2 itemsDownload ./*

..
useMousePosition.ts
useWindowSize.ts


hooksuseWindowSize.ts
708 B• 2•  3 days ago•  DownloadRawClose
3 days ago•  2

{}
import { useEffect } from 'react';
import { useAppDispatch } from '../hooks';
import { setWindowSize } from '../windowSize/windowSizeSlice';

export const useWindowSize = () => {
  const dispatch = useAppDispatch();

  useEffect(() => {
    // Handler to dispatch window size
    const handleResize = () => {
      dispatch(
        setWindowSize({
          width: window.innerWidth,
          height: window.innerHeight,
        })
      );
    };

    // Set initial size on mount
    handleResize();

    // Add resize event listener
    window.addEventListener('resize', handleResize);

    // Cleanup on unmount
    return () => window.removeEventListener('resize', handleResize);
  }, [dispatch]);
};

Top
©twily.info 2013 - 2025
twily at twily dot info



2 274 990 visits
... ^ v