fix(ui): ensure initial data fetch only happens once

# What does this PR do?


## Test Plan
This commit is contained in:
Eric Huang 2025-06-20 15:51:23 -07:00
parent 6fde601765
commit 40a028045c

View file

@ -56,6 +56,9 @@ export function usePagination<T>({
const stateRef = useRef(state); const stateRef = useRef(state);
stateRef.current = state; stateRef.current = state;
// Track if initial data has been fetched
const hasFetchedInitialData = useRef(false);
/** /**
* Fetches data from the API with cursor-based pagination * Fetches data from the API with cursor-based pagination
*/ */
@ -119,8 +122,11 @@ export function usePagination<T>({
// Auto-load initial data on mount // Auto-load initial data on mount
useEffect(() => { useEffect(() => {
fetchData(); if (!hasFetchedInitialData.current) {
}, []); hasFetchedInitialData.current = true;
fetchData();
}
}, [fetchData]);
return { return {
data: state.data, data: state.data,