父子组件生命周期执行顺序
-
加载渲染阶段
- 首先执行的是父组件的
[beforeCreate](){"sa":"re_dqa_zy","icon":1} - 接着执行的是父组件的
[created](){"sa":"re_dqa_zy","icon":1}周期 - 然后执行的是父组件的
beforeMount周期 - 接下来执行的是子组件的
beforeCreate周期 - 之后执行的是子组件的
created周期 - 最后执行的是子组件的
beforeMount周期,以及子组件的mounted周期 - 在这个阶段,父组件的
mounted周期是最后一个被执行的
- 首先执行的是父组件的
-
更新阶段
- 当父子组件有数据传递时,执行顺序为:父组件的
beforeUpdate,子组件的beforeUpdate,子组件的updated,最后是父组件的updated
- 当父子组件有数据传递时,执行顺序为:父组件的
-
销毁阶段
- 销毁阶段的执行顺序为:父组件的
beforeDestroy,子组件的beforeDestroy,子组件的destroyed,最后是父组件的destroyed
- 销毁阶段的执行顺序为:父组件的
需要注意的是,如果子组件是异步组件的话,它们的执行顺序会发生改变,会先执行完父组件的生命周期然后再执行子组件的生命周期。此外,如果在组件开始生成到结束生成的过程中,如果该组件还包含子组件,则自己开始生成后,要让所有的子组件也开始生成,然后自己就等着,直到所有的子组件生成完毕,自己再结束。

浙公网安备 33010602011771号