生命周期和钩子函数

189 阅读1分钟

四个阶段

1.初始化 ==> 创建组件  ==> beforeCreate created

2.挂载 =>渲染显示组件 =>  beforeMount mouted

3.更新 =》修改了变量=》触发视图刷新 => beforeUpdate updated

4.销毁 =》切换页面 =》会把组件对象从内存删除 => beforeDestory destoryed

八个钩子函数

### 生命周期流程图

image.png

1. beforeCreate:

这个阶段 vue 实例刚刚在内存中创建,此时 data 和 methods 这些都没初始化好。

2.created:

这个阶段 vue 实例在内存中已经创建好了,data 和 methods 也能够获取到了,但是模板还没编译。

3.beforeMount:

这个阶段完成了模板的编译,但是还没挂载到页面上。

4.mounted:

这个阶段,模板编译好了,也挂载到页面中了,页面也可以显示了。

5.beforeUpdate:

转态更新之前执行此函数,此时 data 中数据的状态值已经更新为最新的,但是页面上显示的数据还是最原始的,还没有重新开始渲染 DOM 树。

6.updated:

这个阶段是转态更新完成后执行此函数,此时 data 中数据的状态值是最新的,而且页面上显示的数据也是最新的,DOM 节点已经被重新渲染了。

7.beforeDestroy:

beforeDestroy 阶段处于 vue 实例被销毁之前,当然,这个阶段 vue 实例还能用。

8.destroyed:

这个阶段在 vue 实例销毁后调用,此时所有实例指示的所有东西都会解除绑定,事件监听器也都移除,子实例也被销毁。