问题描述
-
在vue3的onMounted中获取到的元素高度与实际高度不符
-
通过nextTick也获取不到实际高度。
解决
原因:页面元素和页面资源未完全渲染与加载完,就获取高度,导致获取不准确。
解决:页面元素完全加载完再获取高度。
import { reactive, onMounted } from "vue";
onMounted(() => {
let timer = null;
timer = setInterval(function () {
if (document.readyState === "complete") {
const bodyHei = document.body.clientHeight || document.documentElement.clientHeight;
console.log(bodyHei);
window.clearInterval(timer);
}
}, 1000);
});