• 8.2 创建Vnode

    8.2 创建Vnode

    Vnode这个类在之前章节已经分析过源码,本质上是用一个对象去描述一个真实的DOM元素,简易版关注点在于元素的tag标签,元素的属性集合data,元素的子节点children,text为元素的文本节点,简单的描述类如下:

    1. class VNode {
    2. constructor(tag, data, children) {
    3. this.tag = tag;
    4. this.data = data;
    5. this.children = children;
    6. this.elm = ''
    7. // text属性用于标志Vnode节点没有其他子节点,只有纯文本
    8. this.text = util._isPrimitive(this.children) ? this.children : ''
    9. }
    10. }