关于mounted的两个疑问

来源:4-4 歌手详情页 MusicList 组件功能交互优化(01)

慕莱坞0998854

2021-11-02

这一节我们通过动态的计算图片的高度,解决了scroll无法滚动的问题,但是我对onMounted这个钩子函数的执行时间产生了疑问。
图片描述
文档里说在 “实例挂载完成后被调用”,我不明白什么时候叫做
实例挂载完成以后
问题1> 以本节的代码为例,我们获取图片地址以后,假如此时网速较慢,此时图片还没加载完全,那么下面的代码能获取到正确的图片高度吗(等图片加载完全才算是mounted吗)?
图片描述
问题2> 已知这个组件的数据是异步获取的,那么onMounted的时候,这个组件的是否已经获取到完整的数据了?子组件和父组件的onMounted钩子函数谁先触发?

写回答

1回答

ustbhuangyi

2021-11-02

1. mounted 是组件 DOM 挂载到页面后触发的钩子,此时图片很可能没有加载成功,它和 mounted 无关,但是这里的 bg-image 层的高度是根据页面固定好的,不会随着图片的加载而改变。
2. 组件的数据获取和 mounted 也无关,而且通常情况下,在组件内部异步获取数据成功的时候,组件早已 mounted。
3. 子组件的 mounted 先触发,父组件的 mounted 后触发,这块想详细了解的话可以去学习源码课程。

0
0

Vue3开发企业级音乐Web App 明星讲师带你学大厂代码

慕课网明星讲师黄轶深度讲解 Vue3.0 ,提升的不止是Vue代码能力

2223 学习 · 1002 问题

查看课程