【发布时间】:2021-08-01 18:03:07
【问题描述】:
我正在使用此代码来侦听函数组件中的调整大小事件,并在调整窗口大小时重新呈现组件。问题是,任何一个事件侦听器都没有打印任何内容,所以我认为我对我在这里使用 useEffect 的方式有误解。
const [dimensions, setDimensions] = React.useState({
width: window.innerWidth,
height: window.innerHeight,
});
useEffect(() => {
const handleResize = () => {
console.log(dimensions.width);
setDimensions({
width: window.innerWidth,
height: window.innerHeight,
});
window.addEventListener("load", handleResize, false);
window.addEventListener("resize", handleResize, false);
};
});
【问题讨论】:
-
首先,您的
window.addEventListener调用在insidehandleResize。
标签: javascript reactjs react-hooks