Vue.js 是一款流行的前端框架,它的生命周期分为 8 个不同的阶段,每个阶段都有自己的任务和作用。以下是 Vue.js 生命周期的各个阶段及其作用:
-
beforeCreate:在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。该阶段只有一个任务,那就是初始化注入的选项和响应式数据。
-
created:实例已经创建完成之后调用。在这个阶段,实例已经完成以下任务:
- 实例化注入的选项
- 初始化响应式数据
- 创建计算属性和方法
- 执行 created 钩子函数
-
beforeMount:在挂载开始之前被调用。在该阶段,Vue.js 已经完成以下任务:
- 编译模板
- 找到 render 函数或 template 中的 render 函数
- 创建虚拟 DOM
-
mounted:实例已经挂载到 DOM 上后调用。该阶段完成以下任务:
- 创建真实 DOM 节点并将其插入到 DOM 树中
- 实例已经挂载到 DOM 上
- 执行 mounted 钩子函数
-
beforeUpdate:在数据更新之前调用,发生在虚拟 DOM 重新渲染和打补丁之前。该阶段完成以下任务:
- 在数据更新之前执行一些操作
-
updated:在由于数据更改导致的虚拟 DOM 重新渲染和打补丁之后调用。该阶段完成以下任务:
- 在数据更改导致的重新渲染和打补丁之后执行一些操作
-
beforeDestroy:在实例销毁之前调用。在该阶段完成以下任务:
- 在实例销毁之前执行一些操作
-
destroyed:在实例销毁之后调用。在该阶段完成以下任务:
- 清理计算属性和监听器
- 解绑所有的事件监听器
- 销毁实例