根据 Facebook 的文档,
ListView - A core component designed for efficient display of vertically scrolling lists of changing data.
FlatList - A performant interface for rendering simple, flat lists.
看来两者都很有效。选择其中之一时我们应该考虑什么?
最佳答案
FlatList - 与 ListView 相比,性能更高。一旦项目数量变大,ListView 渲染就会变慢。 FlatList 显着提高了内存使用率和效率(特别是对于大型或复杂列表),同时还显着简化了 props — 不再需要数据源!
功能
Flatlist 包含具有丰富功能的新组件,可以开箱即用地处理大多数用例:
- 滚动加载(onEndReached)。
- 拉动刷新(onRefresh/刷新)。
- 可配置可见度 (VPV) 回调(onViewableItemsChanged/viewabilityConfig)。
- 水平模式(水平)。
- 智能项目和部分分隔符。
- 多列支持(numColumns)
- scrollToEnd、scrollToIndex 和scrollToItem
- 更好的流输入。
FlatList 仍然缺少一些功能,例如粘性标题,但它正在快速发展。 ListView 将获得 deprecated .罢工>
ListView是deprecated 现在,平面列表中的粘性标题现在可以工作
更好的选择
我在平面列表中渲染 5000 多个项目时遇到性能问题。寻找其他替代品并发现recyclerlistview - 适用于 React Native 和 Web 的高性能 ListView 。与平面列表相比,scrollTo 性能更好,渲染优化也更好。
关于reactjs - ListView 和 FlatList 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44510236/