Vue 的父子组件渲染中为什么子组件的 onMounted 先执行?

在 vue 中,如果嵌套了很多层组件的话,那么各个组件的 onMounted 执行顺序为什么是 子组件 先执行onMounted 函数,最后执行父组件onMounted 函数?

(tips:) 我测试了一下,react 也是这样的机制。
image.png
image.png
image.png

这个问题我思考了很久,没想出什么反过来有什么弊端。

请问这样的设计是为什么呢?🤔

可以举个反例的话最好了,谢谢

阅读 4.7k
2 个回答

子组件挂载到DOM完成父组件才会触发 onMounted 啊,除非说子组件是异步载入的。

父组件先创建,然后子组件创建;子组件先挂载,然后父组件挂载。
image.png
把生命周期打印全就明白了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题