mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-09 20:29:36 +02:00
Add initial data fetch function to grid
This commit is contained in:
@@ -26,6 +26,7 @@ interface VirtualGridProps
|
|||||||
cardRows: CardRow<any>[];
|
cardRows: CardRow<any>[];
|
||||||
display?: ListDisplayType;
|
display?: ListDisplayType;
|
||||||
fetchFn: (options: { columnCount: number; skip: number; take: number }) => Promise<any>;
|
fetchFn: (options: { columnCount: number; skip: number; take: number }) => Promise<any>;
|
||||||
|
fetchInitialData?: () => any;
|
||||||
handleFavorite?: (options: {
|
handleFavorite?: (options: {
|
||||||
id: string[];
|
id: string[];
|
||||||
isFavorite: boolean;
|
isFavorite: boolean;
|
||||||
@@ -56,6 +57,7 @@ export const VirtualInfiniteGrid = forwardRef(
|
|||||||
handlePlayQueueAdd,
|
handlePlayQueueAdd,
|
||||||
minimumBatchSize,
|
minimumBatchSize,
|
||||||
fetchFn,
|
fetchFn,
|
||||||
|
fetchInitialData,
|
||||||
loading,
|
loading,
|
||||||
initialScrollOffset,
|
initialScrollOffset,
|
||||||
handleFavorite,
|
handleFavorite,
|
||||||
@@ -67,7 +69,7 @@ export const VirtualInfiniteGrid = forwardRef(
|
|||||||
const listRef = useRef<any>(null);
|
const listRef = useRef<any>(null);
|
||||||
const loader = useRef<InfiniteLoader>(null);
|
const loader = useRef<InfiniteLoader>(null);
|
||||||
|
|
||||||
const [itemData, setItemData] = useState<any[]>([]);
|
const [itemData, setItemData] = useState<any[]>(fetchInitialData?.() || []);
|
||||||
|
|
||||||
const { itemHeight, rowCount, columnCount } = useMemo(() => {
|
const { itemHeight, rowCount, columnCount } = useMemo(() => {
|
||||||
const itemsPerRow = itemSize;
|
const itemsPerRow = itemSize;
|
||||||
|
|||||||
Reference in New Issue
Block a user