vue源码分析
Jacano
这个作者很懒,什么都没留下…
展开
-
【Vue】理解Vue源码系列(九)
我们知道了组件配置的合并流程,我们再来看看组件注册的过程,组件注册分为全局注册和局部注册,首先我们来看组件的全局注册。全局注册的代码定义在vue/src/core/global-api/assets.js中。 import { ASSET_TYPES } from 'shared/constants' import { isPlainObject, validateComponentName }...原创 2019-07-20 22:26:36 · 163 阅读 · 0 评论 -
【Vue】理解Vue源码系列(八)
123原创 2019-07-20 21:30:37 · 183 阅读 · 0 评论 -
【Vue】理解Vue源码系列(七)
通过createComponent我们得到了组件vnode,接着会执行_update函数,_update的核心又是通过执行patch来完成的,patch是通过createElm来实现的,我们来看其中的逻辑。 function createElm ( vnode, insertedVnodeQueue, parentElm, refElm, nested, ownerArra...原创 2019-07-07 22:23:44 · 174 阅读 · 0 评论 -
【Vue】理解Vue源码系列(六)
在createComponent中,我们了解了组件构造器的初始化,接下来我们看看组件生命周期的安装。 export function createComponent ( ... // install component management hooks onto the placeholder node installComponentHooks(data) ... } funct...原创 2019-07-07 20:52:47 · 189 阅读 · 0 评论 -
【Vue】理解Vue源码系列(五)
我们了解了Vue首次加载过程,之前的分析是建立在有template的基础上的,例如 var app = new Vue({ template:"<div>hello</div>", el: '#app', }) 但更多情况我们是传入一个组件来完成Vue的初始化,例如 var demo = { name: 'demo', template: ...原创 2019-07-06 22:44:54 · 1281 阅读 · 0 评论 -
【Vue】理解Vue源码系列(四)
_render方法定义在vue/src/core/instance/render.js Vue.prototype._render = function (): VNode { const vm: Component = this const { render, _parentVnode } = vm.$options if (_parentVnode) { ...原创 2019-07-06 16:54:19 · 154 阅读 · 0 评论 -
【Vue】理解Vue源码系列(三)
当Vue执行完_init方法后,会调用$mount方法,这个方法在入口已经定义好了,我们先来看带有编译功能的$mount方法。目录在vue/src/platporms/web/entry-runtime-with-compiler.js。 const mount = Vue.prototype.$mount Vue.prototype.$mount = function ( el?: stri...原创 2019-06-30 16:28:48 · 113 阅读 · 0 评论 -
【Vue】理解Vue源码系列(二)
Runtime + Compiler 我们来看带有编译功能的Vue版本,vue/src/platforms/web/entry-runtime-with-compiler.js。 import config from 'core/config' import { warn, cached } from 'core/util/index' import { mark, measure } from ...原创 2019-06-29 10:39:08 · 169 阅读 · 0 评论 -
【Vue】理解Vue源码系列(一)
深入理解Vue源码,才是真正的使用Vue。我们可能用Vue开发了很多项目,但并不知道Vue框架中的原理,这样我们只会是一个Api调用师。理解一些框架的源码,帮助我们去设计、开发出更高质量的代码,这是一个真正工程师的必要技能。接下来,我们开启Vue源码探究之旅。 本次Vue源码系列的Vue版本为2.6.10,所有的讨论都是围绕着这个版本的Vue展开的。 我们先来看Vue源码目录,Vue源码都在src...原创 2019-06-28 09:10:21 · 388 阅读 · 0 评论