如何优化 react-native-maps 性能?
How to optimise react-native-maps performance?
我按照 来 setInterval
每 200 毫秒更新一次。
我的代码在Snack
(我无法添加 react-native-maps。我检查了 expo's docs 并且该示例也不起作用)
问题是:当setInterval
运行时,如果data.length < 200,应用程序仍然运行流畅。但是如果 data.length > 200,每 200 毫秒,我设置状态 timer
一次,然后我将 timer
支持到 VehicleMarker
并从数据 [timer - 1 中创建标记 运行 ] 到数据 [计时器]。虽然我使用 React.memo
但它似乎仍然重新渲染了很多次( data.length 次),因为 tripIndex 发生了变化。所以它使应用程序滞后,因为它必须加载 data.length 次 MapView。
这是demo video。
我的临时解决方案是使用 React.useRef 并在子级中引入间隔以减少父级中的 re-render。
我按照 setInterval
每 200 毫秒更新一次。
我的代码在Snack
(我无法添加 react-native-maps。我检查了 expo's docs 并且该示例也不起作用)
问题是:当setInterval
运行时,如果data.length < 200,应用程序仍然运行流畅。但是如果 data.length > 200,每 200 毫秒,我设置状态 timer
一次,然后我将 timer
支持到 VehicleMarker
并从数据 [timer - 1 中创建标记 运行 ] 到数据 [计时器]。虽然我使用 React.memo
但它似乎仍然重新渲染了很多次( data.length 次),因为 tripIndex 发生了变化。所以它使应用程序滞后,因为它必须加载 data.length 次 MapView。
这是demo video。
我的临时解决方案是使用 React.useRef 并在子级中引入间隔以减少父级中的 re-render。