是什么:
- 是 JS 对象
- 是对真实 DOM 的描述
React 组件的挂载阶段:根据 JSX 构建虚拟 DOM, ReactDOM.render 实现虚拟 DOM 到真实 DOM 的映射
React 组件的挂载阶段:页面变化,体现在虚拟 DOM 上,然后变化前后的虚拟 DOM 对比,将变化的部分作用于真实的 DOM。
虚拟 DOM 在 react 的工作流中起的作用?
- 初始化时,执行 render,构建虚拟 DOM, ReactDOM.render 将虚拟 DOM 渲染为真实 DOM。
- 更新时,执行 render,构建虚拟 DOM,通过 diff 算法得出更新前后的差异,ReactDOM.render 将计算得到的差异的虚拟 DOM 渲染为真实 DOM。
虚拟 DOM 解决了什么问题
- 研发体验/研发效率
- 跨平台