前言
执行this._init()事件
初始化生命周期(initLifecycle()函数分析)
给实例初始化了一些属性,以$开头的供用户使用的外部属性,以_开头的供内部使用的内部属性
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| export function initLifecycle (vm: Component) { const options = vm.$options
let parent = options.parent if (parent && !options.abstract) { while (parent.$options.abstract && parent.$parent) { parent = parent.$parent } parent.$children.push(vm) }
vm.$parent = parent vm.$root = parent ? parent.$root : vm
vm.$children = [] vm.$refs = {}
vm._watcher = null vm._inactive = null vm._directInactive = false vm._isMounted = false vm._isDestroyed = false vm._isBeingDestroyed = false }
|
初始化even事件(initEvents())
初始化渲染(initRender(vm))
触发beforeCreate钩子(callHook(vm, ‘beforeCreate’))
初始化Injections(initInjections(vm))
初始化状态(initState(vm))
1,初始化props
2,初始化methods
3,初始化data
4,初始化computed
5,初始化watch
初始化Provide(initProvide(vm))
触发Create钩子(callHook(vm, ‘created’))
最后检测vm是否有el属性,有就调用vm.$mount()
执行vm.$mount()
执行vm.$mount() (解析template /el并转换为渲染函数 )
作者:
inwen6
许可证:
Copyright (c) 2019 CC-BY-NC-4.0 LICENSE
口号:
吾日三省吾身?