根据调试工具看Vue源码之虚拟dom(一)
初次探索
什么是虚拟dom
Vue
通过建立一个虚拟 dom
对真实 dom
发生的变化保持追踪。请仔细看这行代码:
return createElement('h1', this.blogTitle)
createElement
到底会返回什么呢?其实不是一个实际的 dom
元素。它更准确的名字可能是 createNodeDescription
,因为它所包含的信息会告诉 Vue 页面上需要渲染什么样的节点,及其子节点。我们把这样的节点描述为“虚拟节点 (Virtual Node
)”,也常简写它为“VNode
”。“虚拟 dom
”是我们对由 Vue
组件树建立起来的整个 VNode
树的称呼。
以上这段对虚拟dom
的简短介绍来自Vue
的官网
第一个断点
我们一开始的断点先打在app.vue
的两个hook
上:
export default { name: 'app', created () { debugger }, mounted () { debugger } }
刷新页面,此时调用栈中显示的函数跟预想中的不太一样:
在created
这个hook
执行之前,多出了一些比较奇怪的函数:
createComponentInstanceForVnode
Vue._update
mountComponent
相关推荐
书虫媛 2020-07-08
源码zanqunet 2020-10-28
anchongnanzi 2020-09-21
CRMCRMCRMDS 2020-08-12
Cricket 2020-07-27
yuzhu 2020-11-16
85477104 2020-11-17
KANSYOUKYOU 2020-11-16
sjcheck 2020-11-03
怪我瞎 2020-10-28
gloria0 2020-10-26
王军强 2020-10-21
学习web前端 2020-09-28
QiaoranC 2020-09-25
安卓猴 2020-09-12
Macuroon 2020-09-11
kiven 2020-09-11
LittleCoder 2020-09-11
Cheetahcubs 2020-09-13