1

需求:加载一个页面,特别复杂的时候会有很多的组件,我想知道每个组件渲染时间,清楚的定位到底哪个组件浪费时间多,然后优化。
背景:react的性能优化一直很头疼,最早做过一个左右联动的列表页面,在本地运行没有任何问题,但是放到RN里,惨不忍睹,虽然过去了很久,但是记忆深刻,在andriod和ios里都有对应的性能检测工具,很方便定位问题,在h5端,我通过自己的摸索,找到了一款react的优化检测工具,react developer tools。
tips: 在react16版本之前,可以使用react-addons-perf
import Perf from 'react-addons-perf';
window.Perf = Perf;

安装:
去谷歌商店https://chrome.google.com/web..., 搜react-developer-tools,然后添加到浏览器,就行了
最终看到:
image.png
使用:
打开开发者面板
image.png
点击绿色按钮,录制
image.png
点击tap页面后,点击红色的录制按钮,暂停
image.png
点击面板里的刷新按钮可以检测重载时的性能
结果如下:
按照嵌套层级的渲染图表
image.png
按照渲染时长的图表
image.png

这样我们就知道,每个组件的渲染时间是多少了,遇到那种消耗时间太长的可以进一步去优化。

其他:react-performance-tool


杨龙飞
45 声望2 粉丝

喜欢思考,喜欢前端,喜欢交友,喜欢玩