首页 > 编程知识 正文

vue函数,生命周期vue

时间:2023-05-06 04:04:00 阅读:18759 作者:450

1、Vue实例的生命周期是什么? 从创建、运行到销毁Vue实例,始终伴随着各种事件。 这些事件统称为生命周期。

生命周期挂接是生命周期事件的别名

生命周期挂接=生命周期函数=生命周期事件

的主要生命周期函数分类:

创建期间的生命周期函数:

beforeCreate :在实例初始化后调用。 此时,实例刚在内存中创建,data和methods尚未初始化。

created :在实例创建完成后立即同步调用,在内存中创建实例,初始化data和methods,并且没有开始编译模板。

beforeMount :在装载开始前调用,模板编译完成,并且未装载到页面上。

mounted装载并调用实例,并将编译的模板装载并显示在页面上指定的容器中。

运行期间的生命周期函数:

beforeUpdate :在更新状态前调用。 此时,data的值是最新的,但接口上的数据仍然旧,因此尚未开始重新渲染DOM节点。

updated :实例更新调用完成,更新了data值和接口上显示的数据,并重新渲染了接口。

销毁期间的生命周期函数:

beforeDestroy :在实例被销毁之前调用。 在此步骤中,实例仍然完全可用。

destroyed :在实例被销毁后调用。 调用挂接时,与Vue实例相对应的所有指令将解除绑定,所有事件侦听器将被删除,所有子实例将被销毁。

2、Vue生命周期图

下面解释一一对应图中的数字

1、var vm=new Vue({} )表示开始创建Vue的实例对象

2 .刚初始化一个空Vue实例对象,此时该对象只有默认生命周期函数和默认事件,没有创建其他对象

3、beforeCreate生命周期函数运行时,data和methods数据和方法尚未初始化

4、初始化data和methods

5、在created中,data和methods已经初始化,要操作data的数据或调用methods的方法,只能最快在created中进行操作

6、这个绿色边框中的内容,Vue开始编辑模板,执行Vue代码中的那些指令,最终生成编译到内存中的最终模板字符串对象,并将该字符串对象渲染为内存中的DOM 此时,只有在内存中渲染了模板,模板没有装载到真正的页面上

7、beforeMount函数运行时,模板已编译到内存中,但尚未装载到页面上。 此时,页面还很旧

8、将编译到内存中的模板,实际替换为浏览器的页面中区

9、mounted是页面加载完成后运行的函数,如果在某些插件中操作页面上的DOM节点,则最初在mounted中执行

10、仅运行mounted,就表示整个Vue实例对象已初始化。 此时,组件将离开创建阶段,进入执行阶段。

11、蓝框中是组件的执行阶段,执行阶段的生命周期函数只有beforeUpdate和updated两个,这两个事件根据data数据的变化,有0到多次选择性触发

12、执行beforeUpdate时,页面上显示的数据还很旧。 此时,data的数据是最新的,页面还没有与最新的数据同步

13、在这一步中,首先根据data的最新数据在内存中重新渲染最新的内存DOM树。 更新内存DOM树后,将最新的内存DOM树重新渲染到实际页面。 此时,来自data(model层)-view的数据更新完成

14、更新运行时,页面和数据已经同步,都是最新的

15、beforeDestroy挂接函数运行时,Vue实例从运行阶段进入销毁阶段,构建中的所有数据、方法以及过滤器、命令等都变为可用,此时销毁过程实际上处于可用状态

16、destroyed函数运行时,组件被完全销毁,此时构建中的所有data、methods以及过滤器、命令等都不可用

生命周期函数-组件执行和销毁阶段的挂接函数

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。