bvaughn/react-window-infinite-loader(新しいタブで開きます)
主要言語: TypeScript
InfiniteLoader component inspired by react-virtualized but for use with react-window
- star 数
- 950
- watcher 数
- 9
- fork 数
- 48
- issue 数
- 0
- 最終更新
- 2026/10/26
主要言語: TypeScript
InfiniteLoader component inspired by react-virtualized but for use with react-window
Infinite loader utils inspired by react-virtualized but for use with react-window.
If you like this project, 🎉 become a sponsor or ☕ buy me a coffee.
Begin by installing the library from NPM:
npm install react-window-infinite-loader
The recommended way to use this library is the new useInfiniteLoader hook:
import { useInfiniteLoader } from "react-window-infinite-loader"; function Example() { const onRowsRendered = useInfiniteLoader(props); return <List onRowsRendered={onRowsRendered} {...rest} />; }
The InfiniteLoader component also exists, though it has changed since version 1:
onItemsRendered parameter renamed to onRowsRenderedlistRef parameter removedimport { InfiniteLoader } from "react-window-infinite-loader"; function Example() { return ( <InfiniteLoader {...props}> {({ onRowsRendered }) => <List onRowsRendered={onRowsRendered} {...rest} />} </InfiniteLoader> ); }
Loads rows as they are scrolled into view; a render prop alternative to the useInfiniteLoader hook.
The useInfiniteLoader hook accepts the same props, except for children.
| Name | Description |
|---|---|
| isRowLoaded | Function responsible for tracking the loaded state of each item. |
| loadMoreRows | Callback to be invoked when more rows must be loaded. It should return a Promise that is resolved once all data has finished loading. |
| rowCount | Number of rows in list; can be arbitrary high number if actual number is unknown. |
| children | Render prop that receives an |
| Name | Description |
|---|---|
| minimumBatchSize | Minimum number of rows to be loaded at a time; defaults to 10. This property can be used to batch requests to reduce HTTP requests. |
| threshold | Threshold at which to pre-fetch data; defaults to 15. A threshold of 15 means that data will start loading when a user scrolls within 15 rows. |