Vue 在生命周期的什么阶段,所有子组件都被挂载完毕?
问题:最近在重构代码是被一个问题困惑了两天,那就是Vue在生命周期的什么阶段,所有子组件都会被挂载完毕?
背景:场景是这样的,我将页面的header部分使用component独立了出来,并在header中具有用标签加载背景图,背景图比较大,由于图片是根据路由不同,动态从config文件加载的,所以header的高度也是动态变化的,于是我就想获取header的高度。
具体情况:
我的第一直觉是在生命周期的某个阶段来使用ref或DOM来获取这个高度的值,于是我开始使用尝试在mounted中获取height,得到的结果是18,实际应该是78(在盒模型看到的),文档提到mounted阶段“不会承诺所有子组件也都一起被挂载”,我觉得应该是我的图片比较大,导致了munted执行header还没有渲染完成导致的,文档推荐的nexttick我也试了,也不行。
问题:
到底应该怎么在页面加载之初就自动获取header的高度属性的?也就是在什么地方,能够确定所有组件都挂载完了?