顾乔芝士网

持续更新的前后端开发技术栈

67、Vue 中如何实现一个虚拟 DOM?说说你的思路(高薪常 问)

首先要构建一个 Vnode 的类,DOM 元素上的所有属性在 Vnode 类实例化出来的对象上都存在对应的属性。例如 tag 表示一个元素节点的名称,text 表示一个文本节点的文本,chlidren 表示子节点等。将 Vnode 类实例化出来的对象进行分类,例如注释节点、文本节点、元素节点、组件节点、函数式节点、克隆节点。

然后通过编译将模板转成渲染函数 render,执行渲染函数 render,在其中创建不同类型的Vnode 类,最后整合就可以得到一个虚拟 DOM(vnode),最后通过 patch 将 vnode 和 oldVnode进行比较后,生成真实 DOM.

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言