import React, { useState, useEffect } from 'react'
// 函数要以use开头
function useWindowSize() {
const getWindowSize = () => ({
innerHeight: window.innerHeight,
innerWidth: window.innerWidth,
});
const [windowSize, setWindowSize] = useState(getWindowSize());
const handleResize = () => {
setWindowSize(getWindowSize());
};
useEffect(() => {
// 监听
window.addEventListener('resize', handleResize);
// 销毁
return () => window.removeEventListener('resize', handleResize)
}, []);
return windowSize;
}
React Hook监听页面大小
最新推荐文章于 2024-06-19 09:31:56 发布