通过缓存原始视图模块查找来优化FCP/LCP

不幸的是,我无法复制这种显著的速度提升。在 Firefox 和 Chrome (macOS) 上,我没有看到任何可衡量的改进。Chrome 在 renderTopicListItem 上花费约 23 毫秒。Firefox 约 30 毫秒。在较旧的 Android 设备 (Pixel 3) 上,我看到约 108 毫秒。更改前后数字似乎没有变化。

顺便说一下,我是通过使用 performance API 来测量这些数字的。我在 renderTopicListItem 的开头添加了 performance.mark("rtli-start"),然后在结尾添加了 performance.measure("rtli", "rtli-start")。

然后,我关闭开发者工具并禁用浏览器插件(开发者工具和浏览器插件会显著影响渲染性能)重新加载浏览器。加载完成后,打开开发者工具并运行此代码来汇总测量结果:

performance.getEntriesByName("rtli").reduce((v, m) => v + m.duration, 0);

我们肯定会合并这项更改——这显然是一个更好的实现。但我不太确定它是否会给我们带来可见的渲染性能差异 :thinking: