首页 > 其他分享 >react项目性能优化实践经验总结

react项目性能优化实践经验总结

时间:2025-01-07 18:56:51浏览次数:1  
标签:React 渲染 代码 react 组件 优化 经验总结

1. 代码片段执行时间

console.time('xxx')

// 代码片段

console.timeEnd('xxx')

在代码片段包裹上述代码,执行后,命令行会输出该段代码的执行时间,非常方便。

2. react Profile

react的<Profiler/>包裹组件后,并传入idonRender回调函数。

id是一个唯一标识符,用于区分不同的Profiler实例;onRender是一个回调函数,每次组件树渲染完成时都会被调用,提供大量关于渲染过程的信息‌。

回调函数参数

  • ‌id‌:标识正在测量的UI部分。
  • ‌phase‌:表示组件树的挂载(mount)、更新(update)或嵌套更新(nested-update)。
  • ‌actualDuration‌:本次更新渲染树所花费的时间(毫秒)。
  • ‌baseDuration‌:估算在不使用记忆化(如memo和useMemo)的情况下重新渲染整棵子树所需的时间。
  • ‌startTime‌:React开始渲染的时间戳。
  • ‌commitTime‌:React提交更新的时间戳‌12。

性能数据解读和优化建议

通过分析Profiler收集的数据,可以了解到哪些组件渲染较慢,从而有针对性地进行性能优化。常见的优化方式包括:

  • ‌避免不必要的组件重新渲染‌:使用React.memo进行组件的浅比较。
  • ‌减少组件层级‌:尽量避免过深的组件嵌套。
  • ‌懒加载组件‌:使用React.lazySuspense实现组件的懒加载。
  • ‌减小组件大小‌:拆分大型组件,优化组件内部的代码逻辑‌

标签:React,渲染,代码,react,组件,优化,经验总结
From: https://www.cnblogs.com/flyfly/p/18658155

相关文章

  • SQL优化有绝招,使用DAS提升工作效率!完成任务可领取保暖手套!
    ​「使用DAS实现数据库SQL优化」活动上线了!数据库自治服务(DatabaseAutonomyService,简称DAS)是一种基于机器学习和专家经验实现数据库自感知、自修复、自优化、自运维及自安全的云服务。数据库自治服务DAS支持自动SQL优化,相比传统的优化方式,能够自动识别问题SQL,生成索引优化建议......
  • Google Play:应用商店SEO与关键词优化教程_2024-07-19_08-43-19.Tex
    GooglePlay:应用商店SEO与关键词优化教程理解GooglePlay的搜索机制搜索算法解析GooglePlay的搜索算法旨在为用户提供最相关、最有价值的应用搜索结果。它基于多种因素进行排名,包括但不限于:关键词匹配:应用的标题、描述、关键词列表中包含的关键词与用户搜索词的匹配度......
  • Product-Marketing-Online: 在线营销: 如何优化 Amazon的 广告投放 以提高 ROI(投资产
    如何优化亚马逊广告以提高ROI?2025-01-0610:07在竞争激烈的Amazon.com亚马逊市场,优化广告以提高ROI是商家的关键任务。以下是一些实用的策略:一、精准的关键词研究与选择深入了解产品特性和目标受众详细分析产品的功能、用途、优势和适用人群。例如:销售一款专业的摄影三......
  • 在SAP(系统、应用与产品)领域,顾问是负责实施、维护和优化SAP系统的专业人员。SAP顾问的
    在SAP(系统、应用与产品)领域,顾问是负责实施、维护和优化SAP系统的专业人员。SAP顾问的等级和本质差异主要体现在经验、技能深度、责任范围、以及角色的具体要求上。根据不同的标准和需求,SAP顾问的等级可以从初级到高级不等。以下是SAP顾问不同等级之间的本质区别和发展路径:1.SAP......
  • 《前端开发必看!React .tsx vs Vue .vue:深度对比,选型不再纠结!》
    .tsx与.vue的区别......
  • webpack打包优化忽略moment的语言包
    newwebpack.IgnorePlugin({resourceRegExp:/^\.\/locale$/,contextRegExp:/moment$/,}),对于做了国际化处理的第三方包,会包含很多的语言包,而这些语言包对项目帮助不大(排除国际化项目),只会增大打包后包的体积,所以需要优化;就处理时间的包moment而言,我们完全......
  • React函数组件中与生命周期相关Hooks详解
    React函数组件及其钩子渲染流程是React框架中的核心概念之一。以下是对该流程的详细解析:一、React函数组件基础定义:React函数组件是一个接收props作为参数并返回React元素的函数。它们通常用于表示UI的一部分,并且不保留内部状态(除非使用React的Hooks)。......
  • vim启动速度优化小结(基于vim9script)
    源码编译./configure--prefix=$HOME/.usr/local/--without-x--enable-gui=no测试版本VIM-ViIMproved9.1(2024Jan02,compiledJan7202514:30:02)Includedpatches:1-993测试脚本#!/usr/bin/envbashcnt=0>startup.txtwhiletruedovim--no......
  • win11一些优化【集合百度上的大佬】
    隐藏资源管理器窗口的主文件夹、图库、OneDrive:注册表编辑器使用Windows+R快捷键打开「运行」对话框,执行regedit打开注册表编辑器。⌈主文件夹⌋注册表路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{f87431......
  • React数值滚动效果,支持数值变化变化
    效果:组件:(NumberScroller.jsx)/***数字滚动效果*/importReact,{useEffect,useState}from'react';importPropTypesfrom'prop-types';constNumberScroller=({targetValue=0,decimalPlaces=0,duration=2000})=>{const......