document.getElementById(“ componentID”)。clientHeight在componentDidMount()函数中始终为零

时间:2019-04-06 13:46:39

标签: html reactjs react-native jsx

我想在页面完全加载后获取标题的高度。

我正试图通过调用将高度保存在componentDidMount()中的状态中

document.getElementById("Header").clientHeight

,但它始终在componentDidMount()中返回0。 我也尝试打电话给

document.getElementById("Header").getClientRects()[0].height

但是它也失败了,因为.getClientRects()返回空数组。 这两种方法都可以在componentDidMount()之外的任何其他函数中使用

1 个答案:

答案 0 :(得分:0)

您是否尝试将其包装为超时?

componentDidMount() {
  setTimeout(()=>{
     document.getElementById("Header").clientHeight
   },0)
}