1、常用生命周期函数
生命周期函数就是vue实例在某一个时间点会自动执行的函数
生命周期: Vue是一个构造函数,当执行执行这个函数时,相当于初始化vue实例;
在创建实例过程中,需要设置数据监听,编译模板,将实例挂载到DOM上,数据更新能够让DOM也更新,
在这个初始化,又会不同阶段默认调用一些函数执行,这些函数就是生命周期的钩子函数;
1、beforeCreate 刚刚初始化了一个vue空的实例对象,这时候,对象上,只有默认的一些生命周期函数和默认事件,data和methods中的数据还没有被初始化。
2、created data和methods都已经被初始化好了,如果调用methods中的方法和操作data中的数据最早只能在created中
3、beforeMount 这一步的时候,模版已经在内存中编译好了,但是尚未挂载到页面中去,此时,页面还是旧的。
4、mounted 这一步 将内存中编译好的模版,替换到浏览器的页面中去,如果需要操作页面上的DOM元素最早需要再mounted中进行。
5、beforeUpdated 这一步 页面中显示的数据还是旧的,但是data中的数据是最新的,页面尚未更新。这里会先根据data中最新的数据,在内存中,重新渲染出一份 最新的虚拟DOM树,当虚拟DOM树跟新后,会把最新的虚拟DOM渲染到页面中去。完成从model-》view的更新。
6、updated 这一步 页面和打他数据已经保持同步了,都是最新的。
组件的生命周期函数只有beforeUpdated和updated。
7、beforeDestroy 这一步 vue实例已经从运行阶段进入到销毁阶段,但是此时data和所有的methods,以及过滤器,指令还处于可用状态,没有真正的销毁。
8、destroyed 此时 组件已经完全被销毁,此时data和methods,过滤器,指令都已经不可用了。