我正在使用以下代码将数据传递给我的 FlatList
<FlatList
data={pubData}
renderItem={({ item }) => (
<Item
id={item.id}
name={item.name}
lat={item.lat}
long={item.long}
deviceLat={deviceLat}
deviceLong={deviceLong}
/>
)}
keyExtractor={(item) => item.id}
/>
在 Item 组件中,我正在运行一些代码来检查经纬度之间的距离,以创建项目列表及其与设备位置的距离。这一切都很好,但是,我对如何在生成距离后对这个列表进行排序感到困惑。
有一个经验法则是,尽量避免在列表(ListItems)内进行计算,因为这些计算将在每个项目中完成,因此如果计算过多,FlatList 将开始导致性能问题。
第二件事是,始终提供您的Final data to the FlatList
,我不得不面对类似的情况,我在 ListItem 中进行所有计算,并且面临性能问题,而不是在 FlatList Container 中移动我的所有计算,这工作得很好,我不不知道您的实现和要求,但在使用列表时请记住这些事情。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句