如何在ReactJS中获取视口高度?在普通JavaScript中,我使用
window.innerHeight()
但是使用ReactJS,我不知道如何获取这些信息。我的理解是
ReactDOM.findDomNode()
仅适用于已创建的零部件。但是,对于文档或主体元素,情况并非如此,这可能会给出窗口的高度
使用挂钩(React16.8.0+)
创建一个useWindowDimensionshook
从“react”导入{useState,useffect};
函数getWindowDimensions(){
常量{innerWidth:width,innerHeight:height}=window;
返回{
宽度
身高
};
}
导出默认函数useWindowDimensions(){
const[windowDimensions,setWindowDimensions]=useState(getWindowDimensions());
使用效果(()=>{
函数handleResize(){
setWindowDimensions(getWindowDimensions());
}
window.addEventListener('resize',handleResize);
return()=>;window.removeEventListener('resize',handleResize);
}, []);
返回窗口尺寸;
}
之后,您就可以在这样的组件中使用它了
常量组件=()=>;{
const{height,width}=useWindowDimensions();
返回(
<;div>;
宽度:{width}~高度:{height}
<;/div>;
);
}
工作示例
原始答案
在React中也是如此,您可以使用window.innerHeight获取当前视口的高度
正如你在这里看到的