跳到主要内容

性能故障排除

性能分析

警告

在评估列表的性能之前,请确保您处于发布模式。在 Android 上,您可以在开发者菜单中禁用 JS 开发模式,而在 iOS 上,您需要运行发布配置。 FlashList 在开发模式下可能会比 FlatList 慢。主要原因是窗口大小等效值要小得多且固定。窗口大小。单击此处以了解更多关于为什么不应该在开发模式下进行性能分析的信息。

以下指标可用于分析列表的整体性能

  • 空白区域 - 滚动时可见的空白区域的大小。 使用内置的 onBlankArea 事件来报告它。您还可以使用此事件在生产环境中跟踪此指标。或者,您可以使用 react-native-performance-lists-profiler 包,它还带有一个 Flipper 插件。
  • TTI - 列表的交互时间。 与空白区域一起作为 react-native-performance-lists-profiler 包的一部分。这是本地性能分析的绝佳选择 - 但是,我们目前不建议在生产环境中使用它。
  • FPS - 每秒帧数。 对于原生和 JS FPS,您可以使用内置的性能监视器,或者我们推荐使用 这个 开源插件。在 Xcode 和 Android Studio 中使用原生性能分析器是另一种选择,但它们仅跟踪原生 FPS。

如何提高性能

如果数字表明性能不够好,您应该采取行动 - 继续 此处了解有关如何优化列表的更多信息。