Vue.js 中父子组件的生命周期钩子函数执行顺序如下:
1. 父组件 beforeCreate
2. 父组件 created
3. 父组件 beforeMount
4. 父组件 mounted
5. 父组件 beforeUpdate (当数据改变时)
6. 父组件 updated
7. 父组件 beforeDestroy (在实例销毁前调用)
8. 父组件 destroyed与此同时,
对应到子组件的生命周期钩子函数执行顺序是:
1. 子组件 beforeCreate
2. 子组件 created
3. 子组件 beforeMount
4. 子组件 mounted
5. (如果父组件更新触发子组件更新)子组件 beforeUpdate
6. 子组件 updated
7. (如果父组件销毁时)
子组件 beforeDestroy
8. 子组件 destroyed需要注意的是,子组件的生命周期钩子是在父组件相应钩子之后被调用的。例如,父组件的 created 钩子执行完毕后,才会开始执行子组件的 created 钩子。但在挂载阶段(mount),多个子组件的生命周期钩子可能并不会严格按照他们在模板中的顺序执行,而是几乎同时进行。