1. 四大生命周期理解:
四个分别:创建 挂载 更新 销毁。其中创建和挂载是牵涉到vue模版渲染的主要过程。每一个生命周期又有触发之前 和 完成之后两个钩子。
其实也可以理解成组件有三种会发生的情况:渲染(创建和挂载)更新和销毁。
对照api钩子就是before created created 、 deforemounted mounted 、before updata updated、before destroy destroyed
2.四大周期都做了”那些事“:
创建:初始化vue选项,data, method, computed, watch
挂载:将dom展示在html上
更新:dom更新
销毁:dom 组件销毁
其中每个周期的before可以理解成,要完成对应的那些事之前的准备过程。
3.父组件 和 子组件生命周期的顺序:
父子生命周期顺序的问题其实就是父子的渲染循序。并且vue 本质是js代码,逻辑执行顺序是自上到下,渲染dom是由内到外。
我们从三中情况分析生命周期顺序。
渲染过程中:
所以先执行 父组件的创建,然后在挂载之前,检测到了有子组件,那么子组件需要先进行渲染,接着子组件的创建,子组件的挂载,子组件渲染结束,接着父组件渲染结束。
父 before created -> 父created -> 父before mounted -> 子before created -> 子created -> 子before mounted -> 子mounted -> 父mounted
更新过程:
父准备更新之前 发现有子组件,那么先更新子组件,子更新结束,再更新父。
父before updata -> 子before updata -> 子updated -> 父updated
销毁过程:
同更新一样。😄