Vue之初始化

前言

之前分析过Moon的源码,对于Moon实现的双向绑定、computed、事件分发、生命周期有了比较详细的阅读分析,学到了很多。不足之处也比较明显,对于component、虚拟DOM、模板解析不够深入,这个高仿库是非常值得深入学习的。

从本文开始会开始一系列Vue源码的学习(Vue版本是2.5.16),本文介绍Vue.js加载过程中主要的初始化工作。

具体分析

Vue源码中使用rollup来实现多种环境的打包,我们关注开发环境的打包入口:src/platforms/web/entry-runtime-with-compiler.js

从该入口分析,整体初始化如下图所示:
这里写图片描述

从上图可以看出,在初始化过程中最主要的几点如下:

  • 默认配置项config定义
  • 判断是否支持相关API从而定义对应的macroTaskFunc和microTaskFunc,用来支持nextTick效果
  • 构建Vue构造函数,并对外暴露
  • 在Vue.prototype上构建相关的实例方法,例如 o n 、 on、 onset、$watch等
  • 在Vue上构建静态方法,例如Vue.component、Vue.directive、Vue.filter等
  • 其他相关辅助函数定义

下一篇文章会结合new Vue()查看创建Vue实例的过程。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值