vue 渲染流程

1、DOM 节点树

vue 渲染流程_第1张图片

高效的更新所有这些节点会是比较困难的,因为原生的DOM节点属性很多,渲染性能差。

 

2、虚拟 DOM

“虚拟 DOM”是我们对由 Vue 组件树建立起来的整个 VNode 树的称呼。

Vue 的模板实际是编译成了 render 函数

vue 渲染流程_第2张图片

 

3、渲染流程

vue 渲染流程_第3张图片

vue 渲染流程_第4张图片

说明:

(1)模板template主要通过createElement函数编译为VNode。

 

https://github.com/vuejs/vue/blob/dev/src/core/vdom/create-element.js

(2)虚拟DOM变为DOM主要通过diff、patch的createElm函数。

https://github.com/vuejs/vue/blob/dev/src/core/vdom/patch.js

(3)在vue初始化时,会调用initRender方法,initRender也是调用createElement编译为VNode

https://github.com/vuejs/vue/blob/dev/src/core/instance/render.js

 

你可能感兴趣的:(vue 渲染流程)