Vue的生命周期,终于明白了

一、大过程:beforeCreate、created、beforeMounted、mounted、beforeUpdate 、updated 、beforeDestroy 、destroyed

二、详细步骤如下:

1、首先创建一个VM实例,即new Vue()

2、Init Events & Lifecycle,(初始化:生命周期、事件,但数据代理还未开始)

3、beforeCreate(此时:无法通过VM访问到data中的数据、methods中的方法)

4、Init injections & reactivity (初始化:数据检查、数据代理)

5、created(此时:可以通过VM访问到data中的数据、methods中配置的方法)

6、解析Vue模板,生成虚拟DOM,存放到内存中,页面还不能显示解析好的内容

7、beforeMount(此时:<1>页面呈现的是未经Vue编译的DOM结构;<2>所有对DOM的操作,最终都不凑小)

8、Create VM.$SET and replace 'el' with it (将内存中的 虚拟DOM 转为 真实DOM 插入页面)

9、mounted(此时:<1>页面中呈现的是经过Vue编译的DOM; <2>对DOM的操作均有效。 至此初始化过程结束,一般在此进行:开启定时器、发送网络请求、订阅消息、绑定自定义事件等初始化操作)

10、beforeUpdate(此时:数据是新的,但页面是旧的,即:页面尚未和数据保持同步)

11、Virtual DOM re-render and patch (根据新数据,生成新的虚拟DOM,随后与旧的DOM进行比较,最终完成页面更新,即:完成了Model--》View的更新)

12、updated(此时:数据是新的,页面也是新的,即:页面和数据保持同步)

13、beforeDestory(此时:VM中所有的data、methods、指令等,都可以处于可用状态,马上要执行销毁过程,一般在此阶段:关闭定时器、取消订阅消息、解绑自定义时间等收尾操作)

14、destoryed(完全销毁实例,即:清理它与其它实例的连接,解绑它的全部指令及时间监听器)

PS:本文章基于Vue2,Vue3生命周期与Vue2相比,略有差异。

我草,朕居然看完了,牛逼的狠,一会儿吃饭给自己加个鸡腿吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值