我希望从 api 调用中呈现一个长列表,从 api 获取整个列表很慢,大多数用户不会查看整个列表,因此在滚动到可见列表底部时进行额外的 api 调用是目标。列表中每个项目的高度将不同,并且取决于每个项目的 api 响应中的文本量。
似乎有三个不同的库:
react-virtualized
: 基于类,维护频率较低,我无法List
使用Autosizer
,CellMeasurer
和InfiniteLoader
.react-window
:同一作者,react-virtualized
只有更新和更简单,支持在滚动到底部时调用和 API(InfiniteLoader
)或允许可变大小的列表(VariableSizeList
)但看起来不是两者:如何在 react-window 中的 VariableSizeList 中获取内容感知非重叠行?react-virtual
: 最近更新和维护,基于钩子接口。
我不确定我是在找错地方还是什么,但这项任务似乎很难实现?实现这样一个列表的最佳方法是什么?