虚拟DOM工作流程(vue/React)

本文深入探讨了Vue和React中虚拟DOM的工作流程。在Vue中,模板转换为虚拟DOM,数据变化时通过diff算法生成patch来更新实际DOM。而在React中,jsx构建虚拟DOM,数据变更后利用React Fiber进行分片比较,同样生成patch来优化DOM操作。这两个库都利用虚拟DOM提高了UI渲染效率。
摘要由CSDN通过智能技术生成

虚拟DOM工作流程(vue/React)

vue
  1. 根据模板 ->创建虚拟dom(jsx)
  2. render函数渲染jsx -> 虚拟对象模型
  3. 在mounterd显然真实dom
  4. Data选项数据改变时
  5. 再一次生成vdom
  6. 通过diff算法【使用js进行比较】比对生成patch补丁对象
  7. 根据patch补丁对象重新渲染真实dom
React
  1. 根据模板 -> vdom [jsx]
  2. render渲染jsx -> 虚拟dom对象模型
  3. 在componentDidmount渲染真实dom
  4. 当data发生改变时
  5. 再一次生成vdom
  6. 通过 React Filber 【React 16版本以上使用】算法进行比较生成patch补丁对象
  7. 根据patch补丁对象重新渲染真实dom
diff算法

我们先根据真实DOM生成一个虚拟 DOM,当虚拟DOM某个节点的数据改变后会生成一个新的Vdom,然后Vdom和真实DOM作对比,发现有不一样的地方就直接修改在真实的DOM上。

filber算法

filber 算法就是一一分片,把一个耗时长的任务分成很多小片,每一个小片运行时间很短,虽然总时间依然很长,但是在小片执行完之后,都给其他任一个务执行的机会,这样线程就不会被独占了,其他任务依然有运行的机会

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值