vue生命周期钩子函数有哪些?

173 阅读2分钟

Vue-生命周期

vue 实例从 创建 到 销毁 的过程就是 生命周期。

  也就是从开始创建、初始化数据、挂载到dom树、更新渲染、销毁等一系列过程

Vue-钩子函数

vue的生命周期常见的主要分为4大阶段8个钩子函数

阶段方法名方法名
初始化beforeCreatecreated
挂载beforeMountmounted
更新beforeUpdateupdated
销毁beforeDestroydestroyed

一、创建前 / 后

beforeCreate生命周期函数执行的时候,data和method 还没有初始化

created 生命周期函数执行的时候,data和method已经初始化完成

created 在此处可以访问 data 和 methods 等

二、渲染前/后

beforeMount 生命周期函数执行的时候,已经编译好了模版字符串、但还没有真正渲染到页面中去

mounted 生命周期函数执行的时候,已经渲染完,可以看到页面

mounted 在此处可以获取真实 DOM 元素

三、更新前/后

beforeUpdate生命周期函数执行的时候,已经可以拿到最新的数据,但还没渲染到视图中去

updated生命周期函数执行的时候,已经把更新后的数据渲染到视图中去了

updated 在此处可以获取更新后的 DOM 元素

四、销毁前/后

beforeDestroy 生命周期函数执行的时候,实例进入准备销毁的阶段、此时data 、methods 、指令等还是可用状态

destroyed生命周期函数执行的时候,实例已经完成销毁、此时data 、methods 、指令等都不可用

一般用于清除定时器和全局事件

另外三个生命周期函数不常用

keep-alive 主要用于减少频繁销毁、创建组件导致的性能浪费

但组件不执行 销毁** / 初始化 创建的方法了, 如何知道组件被 激活 / 失去激活 呢?

activated 只有在keep-alive 组件激活时调用。

deactivated 只有在keep-alive 组件失活时调用。

errorCapured 当捕获一个来自子孙组件的错误时被调用。此钩子会收到三个参数:错误对象、发生错误的组件实例以及一个包含错误来源信息的字符串。此钩子可以返回 false 以阻止该错误继续向上传播。