vue 生命周期
beforeCreate(创建前) :组件实例被创建之初,组件的属性生效之前。
生命周期执行的时候,data和methods中的数据都还没有初始化。不能在这个阶段使用data中的数据和methods中的方法。
created(创建后) :组件实例已经完全创建,属性也绑定,但真实 dom 还没有生成,$el 还不可用。
生命周期执行的时候,data 和 methods都已经被初始化好了,如果要调用 methods 中的方法,或者操作 data 中的数据,最早可以在这个阶段中操作。
beforeMount(挂载前) :在挂载开始之前被调用:相关的 render 函数首次被调用。
生命周期执行的时候,在内存中已经编译好了模板了,但是还没有挂载到页面中,此时,页面还是旧的。
mounted(挂载后) :在el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。
生命周期的时候,Vue实例已经初始化完成了。此时组件脱离了创建阶段,进入到了运行阶段。 如果我们想要通过插件操作页面上的DOM节点,最早可以在和这个阶段中进行。
beforeUpdate(更新前) :组件数据更新之前调用,真实DOM还没被渲染。
生命周期执行的时候,页面中的显示的数据还是旧的,data中的数据是更新后的,页面还没有和最新的数据保持同步。
update(更新后) :组件数据更新之后。
生命周期执行的时候,页面显示的数据和data中的数据已经保持同步了,都是最新的
beforeDestory(销毁前) :组件销毁前调用。
Vue实例从运行阶段进入到了销毁阶段,这个时候上所有的 data 和 methods , 指令, 过滤器 ……都是处于可用状态。还没有真正被销毁
destoryed(销毁后) :组件销毁后调用。
这个时候上所有的 data 和 methods , 指令, 过滤器 ……都是处于不可用状态。组件已经被销毁了。
activated(激活前) :keep-alive专属,组件被激活时调用。
当组件被切回来时,再去缓存里找这个组件、触发 activated钩子函数。
deactivated(激活后) :keep-alive专属,组件被销毁时调用。
当组件被换掉时,会被缓存到内存中、触发 deactivated 生命周期。