Vue生命周期
Vue的生命周期是指Vue实例从创建到销毁的过程,它包括了一系列的阶段,每个阶段都有特定的钩子函数(Lifecycle Hooks),可以在这些钩子函数中添加自己的代码,以实现不同的功能。Vue的生命周期可以分为四个主要阶段:创建阶段、挂载阶段、更新阶段和销毁阶段。
创建阶段
在创建阶段,Vue实例开始初始化,并开始观察数据。这个阶段有beforeCreate和created两个生命周期钩子函数。
beforeCreate
在beforeCreate钩子函数中,this对象已经存在,但data, methods, computed以及watch上的数据和方法还未初始化,因此不能被访问1。
created
在created钩子函数中,data和methods都已经初始化,但还没有$el(DOM节点)。在这个阶段,可以使用Ajax请求定时器或事件监听器1。
挂载阶段
在挂载阶段,Vue将实现DOM的挂载,这意味着页面可以在浏览器中看到。这个阶段有beforeMount和mounted两个生命周期钩子函数。
beforeMount
在beforeMount钩子函数中,模板已经导入并编译成渲染函数,但真实的DOM节点还未挂载。在这个阶段,也可以对数据进行更改1。
mounted
在mounted钩子函数中,真实的DOM节点已经挂载完毕,数据完成了双向绑定,可以访问到DOM节点,并使用$refs属性对DOM进行操作1。
更新阶段
在更新阶段,Vue实例的数据发生变化时,会导致DOM节点更新。这个阶段有beforeUpdate和updated两个生命周期钩子函数。
beforeUpdate
在beforeUpdate钩子函数中,数据即将更新,但DOM节点还未更新1。
updated
在updated钩子函数中,数据更新完毕,DOM节点也更新完成1。
销毁阶段
在销毁阶段,Vue实例开始销毁,所有的事件监听器被移除,所有的子实例也被销毁。这个阶段有beforeDestroy和destroyed两个生命周期钩子函数。
beforeDestroy
在beforeDestroy钩子函数中,Vue实例开始销毁,所有的事件监听器将被移除1。
destroyed
在destroyed钩子函数中,Vue实例完全销毁1。
以上就是Vue生命周期的四个主要阶段及其对应的钩子函数。通过这些生命周期钩子函数,我们可以在不同的阶段控制Vue实例的行为,实现各种功能。
标签:生命周期,函数,DOM,钩子,Vue,阶段 From: https://www.cnblogs.com/chen0509/p/18421802