- 8.2 创建Vnode
8.2 创建Vnode
Vnode
这个类在之前章节已经分析过源码,本质上是用一个对象去描述一个真实的DOM
元素,简易版关注点在于元素的tag
标签,元素的属性集合data
,元素的子节点children
,text
为元素的文本节点,简单的描述类如下:
class VNode {
constructor(tag, data, children) {
this.tag = tag;
this.data = data;
this.children = children;
this.elm = ''
// text属性用于标志Vnode节点没有其他子节点,只有纯文本
this.text = util._isPrimitive(this.children) ? this.children : ''
}
}