面试题答案
一键面试-
执行顺序:
- 父组件:
beforeCreate
->created
- 子组件:
beforeCreate
->created
->beforeMount
->mounted
- 父组件:
beforeMount
->mounted
- 父组件:
-
原理:
beforeCreate
和created
阶段:在这两个阶段,组件实例正在被创建,还未开始挂载到DOM。父子组件在创建过程中,父组件先进入创建流程,触发beforeCreate
和created
钩子。然后子组件开始创建,同样依次触发beforeCreate
和created
钩子。因为子组件是父组件的一部分,需要在父组件的创建流程推进到一定阶段后,才开始子组件的创建。beforeMount
和mounted
阶段:子组件先触发beforeMount
钩子,此时虚拟DOM已经创建完成,但还未真正挂载到页面。接着子组件完成挂载,触发mounted
钩子。只有子组件挂载完成后,父组件才继续推进挂载流程,触发beforeMount
和mounted
钩子。这是因为父组件的DOM结构可能依赖子组件的渲染结果,所以要确保子组件先挂载完成,父组件才能正确挂载。