2022-04-11
1892
#react
Chiamaka Umeh
103049
Apr 11, 2022 ⋅ 6 min read

Pagination and infinite scroll with React Query v3

Chiamaka Umeh A frontend developer with a passion for designing highly-responsive user interfaces for JavaScript-based web and mobile apps using React and React Native.

Recent posts:

TypeScript at scale in 2026: What senior engineers should know

How senior engineers run TypeScript effectively at scale in modern codebases.

Peter Aideloje
Mar 19, 2026 ⋅ 6 min read
the replay march 18

The Replay (3/18/26): Hiring in the AI era, coding isn’t dead, and more

Discover what’s new in The Replay, LogRocket’s newsletter for dev and engineering leaders, in the March 18th issue.

Matt MacCormack
Mar 18, 2026 ⋅ 29 sec read
ken pickering ai hiring quote card

Thinking beats coding: How to hire the right engineers in the AI era

A CTO outlines his case for how leaders should prioritize complex thinking over framework knowledge when hiring engineers for the AI era.

Ken Pickering
Mar 18, 2026 ⋅ 4 min read

Exploring Vercel’s JSON Render: build dynamic UI from structured data

Build dynamic, AI-generated UI safely with Vercel’s JSON Render using structured JSON, validated components, and React.

Emmanuel John
Mar 17, 2026 ⋅ 11 min read
View all posts

6 Replies to "Pagination and infinite scroll with React Query v3"

  1. Hello, well i would like to point a potential problem for this code.
    “`js
    const {
    isLoading,
    isError,
    error,
    data,
    fetchNextPage,
    isFetching,
    isFetchingNextPage
    } = useInfiniteQuery([‘colors’], fetchUsers, {
    getNextPageParam: (lastPage, pages) => {
    return lastPage.info.page + 1
    }
    })
    “`
    When you get the lastPage.info.page + 1 the react-query will never understand when the pages has come to an end, so to fix this you need to put a nextPage that says if theres a next page like has been done on react-query documentation https://github.com/TanStack/query/blob/main/examples/load-more-infinite-scroll/pages/index.js

  2. Hi,

    FYI – looking at your code you’re calling the fetchNextPage like this:

    Load More

    However based on the documentation, this should be avoided instead the callback should be passed like this:

    fetchNextPage()}>Load More

    You can read about it here: https://tanstack.com/query/v4/docs/guides/infinite-queries?from=reactQueryV3&original=https://react-query-v3.tanstack.com/guides/infinite-queries

    Quote from the docs:
    “Note: It’s very important you do not call fetchNextPage with arguments unless you want them to override the pageParam data returned from the getNextPageParam function. e.g. Do not do this: as this would send the onClick event to the fetchNextPage function.”

Leave a Reply

Your email address will not be published. Required fields are marked *

Would you be interested in joining LogRocket's developer community?

Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.

Sign up now