Files
pixelstreamingv2/src/hooks/useWindowDimensions.ts
T
2023-03-20 18:46:15 +05:00

31 lines
744 B
TypeScript

import { useState, useEffect } from "react";
function getWindowDimensions() {
const width = window.innerWidth;
const height = window.innerHeight
return {
width,
height,
};
}
export default function useWindowDimensions() {
const [windowDimensions, setWindowDimensions] = useState(
getWindowDimensions()
);
useEffect(() => {
function handleResize() {
setWindowDimensions(getWindowDimensions());
}
window.addEventListener("orientationchange", handleResize)
window.addEventListener("resize", handleResize);
return () => {
window.removeEventListener('resize', handleResize)
window.removeEventListener('orientationchange', handleResize)
}
}, []);
return windowDimensions;
}