Vue源码解读 Day2

Vue源码解读 Day2

从构建入口web-runtime-cjs-dev resolve(‘web/entry-runtime.js’)开始解读。这个文件构建的是Runtime Only 版本。
resolve(‘web/entry-runtime.js’) 这个解析的文件地址是src/platforms/web/entry-runtime.js

entry-runtime.js的内容如下,这个文件将src/platforms/web/runtime/index导出的Vue文件作为默认文件导出。

import Vue from './runtime/index'
export default Vue

src/platforms/web/runtime/index信息如下

// install platform specific utils
Vue.config.mustUseProp = mustUseProp
Vue.config.isReservedTag = isReservedTag
Vue.config.isReservedAttr = isReservedAttr
Vue.config.getTagNamespace = getTagNamespace
Vue.config.isUnknownElement = isUnknownElement

// install platform runtime directives & components
extend(Vue.options.directives, platformDirectives)
extend(Vue.options.components, platformComponents)

// install platform patch function
Vue.prototype.__patch__ = inBrowser ? patch : noop

// public mount method
Vue.prototype.$mount = function (
  el?: string | Element,
  hydrating?: boolean
): Component {
  el = el && inBrowser ? query(el) : undefined
  return mountComponent(this, el, hydrating)
}

// devtools global hook
/* istanbul ignore next */
if (inBrowser) {
	///略
}

export default Vue

以上主要做了如下几件事情:

  • 注册特定工具方法
  • 注册指令和组件
  • 安装补丁函数
  • 给Vue添加全局mount方法
  • 开发者工具devtool添加全局钩子
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值