虚拟DOM其实就是用JavaScript对象表示的一个DOM节点, 内部包含了节点的 tag , props 和 children .为何使用虚拟DOM?...从上一节babel的编译结果可以看出, 虚拟DOM中包含了创建DOM所需的各种信息, 对于首次渲染, 直接依照这些信息创建DOM节点即可.但虚拟DOM的真正价值在于“更新”: 当一个list中的某些项发生了变化..., 当wipFiber树构建完成后, fiberRoot.current 将从currFiber树的根节点切换为wipFiber的根节点, 以完成更新操作.3.1 基于Fiber的调度——时间切片在2.2...2;若当前执行单元无child且无sibling, 返回到父节点, 并回到4;重复5; 直至回到Root节点, 执行完毕, 将 fiberRoot.current 只为wipFiber树的根节点.以上步骤说明...并获取 children对于HostComponent和ClassComponent, 根据Fiber中的相关属性, 创建DOM节点并赋给 Fiber.stateNode 属性;对于FunctionComponent