vue 组件的生命周期列一下
时间: 2023-10-26 14:37:02 浏览: 29
1. beforeCreate(创建前):在实例初始化之后,数据观测和事件配置之前被调用。
2. created(创建后):在实例创建完成后被立即调用,此时实例已完成以下配置:数据观测(data)、属性和方法的运算、watch/event 事件回调。
3. beforeMount(挂载前):在挂载开始之前被调用:相关的 render 函数首次被调用。
4. mounted(挂载后):实例挂载后调用,但是挂载的组件对应的 DOM 元素还未被渲染出来。
5. beforeUpdate(更新前):数据更新时调用,发生在虚拟 DOM 重新渲染和打补丁之前。
6. updated(更新后):由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后组件 DOM 已更新。
7. activated(激活):被 keep-alive 缓存的组件激活时调用。
8. deactivated(停用):被 keep-alive 缓存的组件停用时调用。
9. beforeDestroy(销毁前):实例销毁之前调用。在这一步,实例仍然完全可用。
10. destroyed(销毁后):实例销毁后调用。这个时候,组件对应的 DOM 元素已经被完全销毁,该组件所有的监听器和子组件也被移除。
相关问题
vue 组件生命周期
Vue 组件的生命周期是指一个组件从创建到销毁的整个阶段。Vue 框架提供了一系列内置的生命周期函数,这些函数会按照特定的顺序自动执行。组件的生命周期函数可以分为三类:创建阶段、运行阶段和销毁阶段。
在创建阶段,组件会按照以下顺序执行一系列生命周期函数:
- beforeCreate:在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。
- created:在实例创建完成后被调用。此时实例已经完成以下的配置:数据观测 (data observer),property 和方法的运算,watch/event 事件回调。然而,挂载阶段还没开始,$el 属性目前不可见。
- beforeMount:在挂载开始之前被调用:相关的 render 函数首次被调用。
- mounted:el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。
在运行阶段,组件会执行以下生命周期函数:
- beforeUpdate:数据更新时调用,发生在虚拟 DOM 重新渲染和打补丁之前。可以在该钩子中对更新之前的状态进行额外的操作。
- updated:由于数据更改导致虚拟 DOM 重新渲染和打补丁后调用。调用时,组件 DOM 已经更新,所以你现在可以执行依赖于 DOM 的操作。
在销毁阶段,组件会执行以下生命周期函数:
- beforeDestroy:实例销毁之前调用。在这一步,实例仍然完全可用。
- destroyed:Vue 实例销毁后调用。此时,Vue 实例的所有指令都已解绑,所有的事件监听器都已移除,所有的子实例也都被销毁。
这些生命周期函数的执行顺序构成了 Vue 组件的完整生命周期。在不同的生命周期函数中,我们可以执行一些特定的操作,例如初始化数据、获取远程数据、处理事件等。
<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [Vue组件的生命周期](https://blog.csdn.net/m0_61612505/article/details/124318968)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [Vue----组件的生命周期](https://blog.csdn.net/m0_53022813/article/details/124411563)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
vue 组件 生命周期
Vue组件的生命周期包括以下几个阶段:
1. 创建阶段(Creation):
- beforeCreate:在实例初始化之后,数据观测(data observer)和事件配置(event/watcher setup)之前调用。
- created:在实例创建完成后调用,此时实例已经完成数据观测,但尚未挂载到页面上。
2. 挂载阶段(Mounting):
- beforeMount:在挂载开始之前被调用,此时模板已经编译完成,但尚未将其渲染到页面中。
- mounted:在挂载完成之后被调用,此时组件已经被渲染到页面中。
3. 更新阶段(Updating):
- beforeUpdate:在数据更新之前被调用,可以在此时对数据进行修改。
- updated:在数据更新完成后被调用,此时DOM已经完成重新渲染。
4. 销毁阶段(Destruction):
- beforeDestroy:在实例销毁之前调用,此时实例仍然完全可用。
- destroyed:在实例销毁之后调用,此时实例已经被解除绑定,所有的事件监听器都已被移除。
除了上述的生命周期钩子函数外,还有一些较少使用的钩子函数,如activated和deactivated,在组件被激活和停用时分别被调用。
在这些生命周期钩子函数中,可以执行一些特定的操作,如数据初始化、异步请求、DOM操作、事件监听等。了解生命周期可以帮助我们更好地掌握Vue组件的创建、挂载、更新和销毁过程,从而更好地进行组件的开发和调试。