Vue 生命周期方法

一、Vue 生命周期

Vue的生命周期即是实例从创建到销毁的一个过程。之前在学习Vue的时候,看过官网的教程,但是经常用到的是mounted,所以对其他生命周期方法不是很熟悉,这里有空做个总结,也方便以后查阅。

二、Vue生命周期方法

主要方法有:beforeCreate,created,beforeMount,mounted,beforeUpdate,updated,beforeDestroy,Destroyed。还有两个不常用的actived,deactivated,这两个方法用于被<keep-alive></keep-alive>包裹的动态组件。使用<keep-alive></keep-alive>组件包裹的话,则涉及到页面缓存。下面开始一一介绍每个生命周期方法。

1.beforeCreate

在实例初始化之后,在数据观测(data observer)和event/watcher事件配置之前被调用,此时data和$el都没有初始化,全部为undefined。

可以在此时加一些loading效果,然后在created移除,可以用在进入请求时间较长的页面,给用户提示,提高用户体验。

2.created

在实例创建完成后立即被调用,在这一步,实例已完成以下配置:数据观测(data observer),属性和方法的运算,watch/event事件回调,然而挂载阶段还没开始,$el属性目前不可见。

3.beforeMount

在挂载开始之前被调用:相关的render函数首次被调用。此时,data和$el都已经存在,但是DOM为虚拟DOM,仍然没有被加载完。

4.mounted

el被新创建的vm.$el所替换,并挂载到实例上去调用该钩子。这时候可以执行异步请求,请求数据初始化页面。

此时data和$el都已经存在,DOM也已经加载完成,完成挂载。

5.beforeUpdate

当data中的数据发生改变时,在变化的数据重新渲染视图之前触发。

6.updated

检测到数据发生变化时,变化的数据重新渲染视图之后触发。

7.beforeDestroy

实例销毁之前调用,此时实例仍然可用。

8.destroyed

实例销毁之后调用,调用后,Vue实例指示的所有东西都会解绑定,所有的事件监听器都被移除,所有的子实例也会被销毁。

9.activated

keep-alive 组件激活时调用

10.deactivated

keep-alive 组件停用时调用

原文地址:https://www.cnblogs.com/sminocence/p/10407631.html

时间: 2024-08-04 20:12:54

Vue 生命周期方法的相关文章

Vue知识整理2:Vue生命周期方法

在vue执行过程中,可以分为beforeCreate.created.BeforeMount.mounted  .BeforeUpdate.updated 等常用的方法,如下图所示. 除此之外,通过查看官方文档,还有若干的生命周期方法: https://cn.vuejs.org/v2/api/ 原文地址:https://www.cnblogs.com/KKSoft/p/11618495.html

vue生命周期的介绍

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>vue生命周期</title> 6 <script src="../js/vue.js"></script> 7 <meta name="viewport" content="width=devic

vue 生命周期

一 vue的生命周期如下图所示(很清晰) 二 vue生命周期的栗子 注意触发vue的created事件以后,this便指向vue实例,这点很重要 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>vue生命周期</title> <script src="../js/vue.js"></script> &

vue生命周期学习心得(下)

此文接vue生命周期学习心得(上)http://www.cnblogs.com/pengshadouble/p/7488330.html通过vue生命周期学习心得(上),大至了解了vue生命周期的8个阶段及相关钩子函数触发的时间点,这章我们通过简单的代码看一下具体的运行结果: <template> <div id="container"> <headers></headers> <router-view></router

对vue生命周期/钩子函数的理解

对于实现页面逻辑交互等效果,我们必须知晓vue的生命周期,才能愉快的玩耍,知道我们写的东西应该挂载到哪里,vue官方给出的api讲解的那叫一个简单啊,如下: 所有的生命周期钩子自动绑定this上下文到实例中,因此你可以访问数据,对属性和方法进行运算.这意味着你不能使用箭头函数来定义一个生命周期方法(例如created: () => this.fetchTodos()).这是因为箭头函数绑定了父上下文,因此this与你期待的 Vue 实例不同,this.fetchTodos的行为未定义. 下面附加

Vue生命周期及业务场景使用

vue里的生命周期是什么? vue实例从创建到销毁的过程称之为vue的生命周期 vue的生命周期各阶段都做了什么? beforeCreate 实例创建前:这个阶段实例的data.methods是读不到的created 实例创建后:这个阶段已经完成了数据观测(data observer),属性和方法的运算, watch/event 事件回调.mount挂载阶段还没开始,$el 属性目前不可见,数据并没有在DOM元素上进行渲染beforeMount:在挂载开始之前被调用:相关的 render 函数首

vue生命周期钩子函数

转载自:https://segmentfault.com/a/1190000008879966 vue生命周期探究(一) 前言 在使用vue开发的过程中,我们经常会接触到生命周期的问题.那么你知道,一个标准的工程项目中,会有多少个生命周期勾子吗?让我们来一起来盘点一下: 根组件实例:8个 (beforeCreate.created.beforeMount.mounted.beforeUpdate.updated.beforeDestroy.destroyed) 组件实例:8个 (beforeCr

Vue生命周期学习

转自https://www.w3cplus.com/vue/vue-instances-and-life-cycles.html Vue实例虽然没有完全遵循MVVM模型,但Vue的设计无疑受到了它的启发. View:是看得到的,即视图,用到Vue的项目中来,它应该是"模板".也就是用来挂载Vue实例的一个DOM元素,通常在项目根目录中index.html文件中出现,比如<div id="app"></div>. Model:即模型(或数据),

VUE生命周期中的钩子函数及父子组件的执行顺序

先附一张官网上的vue实例的生命周期图,每个Vue实例在被创建的时候都需要经过一系列的初始化过程,例如需要设置数据监听,编译模板,将实例挂载到DOM并在数据变化时更新DOM等.同时在这个过程中也会运行一些叫做生命周期钩子的函数(回调函数),这给了用户在不同阶段添加自己代码的机会. 1.vue的生命周期图 在vue实例的整个生命周期的各个阶段,会提供不同的钩子函数以供我们进行不同的操作.先列出vue官网上对各个钩子函数的详细解析. 生命周期钩子 详细 beforeCreate 在实例初始化之后,数