【Vue】为什么 Vue 不使用 React 的分片更新?

第一,首先时间分片是为了解决 CPU 进行大量计算的问题,因为 React 本身架构的问题,在默认的情况下更新会进行很多的计算,就算使用 React 提供的性能优化 API,进行设置,也会因为开发者本身的问题,依然可能存在过多计算的问题。

第二,而 Vue 通过响应式依赖跟踪,在默认的情况下可以做到只进行组件树级别的更新计算,而默认下 React 是做不到的。再者 Vue 是通过 template 进行编译的,可以在编译的时候进行非常好的性能优化,比如对静态节点进行静态节点提升的优化处理,而通过 JSX 进行编译的 React 是做不到的。

第三,React 为了解决更新的时候进行过多计算的问题引入了时间分片,但同时又带来了额外的计算开销,就是任务协调的计算,虽然 React 也使用最小堆等的算法进行优化,但相对 Vue 还是多了额外的性能开销,因为 Vue 没有时间分片,所以没有这方面的性能担忧。(时间分片本身就是性能开销。

第四,根据研究表明,人类的肉眼对 100 毫秒以内的时间并不敏感,所以时间分片只对于处理超过 100 毫秒以上的计算才有很好的收益,而 Vue 的更新计算是很少出现 100 毫秒以上的计算的,所以 Vue 引入时间分片的收益并不划算。

相关推荐
lichenyang453几秒前
JSBridge 不是发消息就完了:runJavaScript、Timeout 和 Callback Lost
前端
xiaofeichaichai5 分钟前
Vite配置实战
前端
zhanghaofaowhrql6 分钟前
为CSDN博客编辑器安装自定义CSS主题,打造个性化写作界面
前端·css·编辑器
懒得不想起名字31 分钟前
flutter 使用go_router 和 page_transition定义页面动画
前端
多加点辣也没关系40 分钟前
JavaScript|第6章:流程控制语句
开发语言·前端·javascript
csj5040 分钟前
前端基础之《React(11)—state声明式》
前端·react.js
程序员晓琪40 分钟前
深入解析:从 Webpack 到 Vite,多入口多端项目的工程化迁移实战
前端·webpack·vite
涛涛ing42 分钟前
Vue 3.6 还没正式发布,但前端的方向已经被它定下来了
前端
阿新聊ai44 分钟前
Claude Code 为什么总不懂你的项目?缺一张「项目地图」
前端·后端·面试
暗冰ཏོ1 小时前
Spring Boot + Vue3 订单支付模块技术实现:支付单、回调验签、幂等处理与余额扣减
前端·spring boot·后端·vue·微信支付·支付宝支付