Files
rive-react/src/utils.ts
2021-06-07 12:17:16 +01:00

25 lines
617 B
TypeScript

import { useState, useEffect } from 'react';
import { Dimensions } from './types';
export function useWindowSize() {
const [windowSize, setWindowSize] = useState<Dimensions>({
width: 0,
height: 0,
});
useEffect(() => {
if (typeof window !== 'undefined') {
const handleResize = () => {
setWindowSize({
width: window.innerWidth,
height: window.innerHeight,
});
};
window.addEventListener('resize', handleResize);
handleResize();
return () => window.removeEventListener('resize', handleResize);
}
}, []);
return windowSize;
}