2022-03-11
4459
#react
Sampath Gajawada
96445
Mar 11, 2022 ⋅ 15 min read

React pagination from scratch using hooks

Sampath Gajawada I'm a full-stack developer who always wishes to implement new and challenging elements in my daily life. Currently, my focus is on React and Vue.

Recent posts:

best JavaScript and HTML5 game engines

Best JavaScript and HTML5 game engines (updated for 2025)

Check out this guide, which ranks the top 10 JavaScript/HTML5 game engines by popularity, capability, and use case.

Solomon Eseme
May 2, 2025 ⋅ 15 min read

React Compiler RC: What it means for React devs

The React team officially released the first Release Candidate (RC). Let’s go over what’s new in RC and what it means for React developers.

David Omotayo
May 2, 2025 ⋅ 7 min read
Understanding Anthropic's Model Context Protocol (MCP)

Understanding Anthropic’s Model Context Protocol (MCP)

The Model Context Protocol (MCP) provides a standardized way for AI models to access contextual information from diverse data sources.

David Omotayo
May 2, 2025 ⋅ 12 min read
Choosing The Best Access Control Model For Your Frontend

Choosing the best access control model for your frontend

Explore RBAC, ABAC, ACL, and PBAC access control methods and discover which one is ideal for your frontend use case.

Temitope Oyedele
May 1, 2025 ⋅ 10 min read
View all posts

3 Replies to "React pagination from scratch using hooks"

  1. Hi, This is great article about pagination.
    What if, we wanted to show the button to show last page and first page

  2. Hi, Although the approach for creating pagination is great and easy. I’m bit concerned about what will happen if current page won’t load then we will end up showing current page on UI but with the old data.

    IMHO It would be great if we just set current page once page data is fetched. and in next and previous calls we just increment and decrement current page with a local variable.

  3. There is bug with the code on github
    fetch(`https://api.instantwebtools.net/v1/passenger?page=${currentPage}&size=5`) instead of
    fetch(`https://api.instantwebtools.net/v1/passenger?currentPage=${currentPage}&size=5`)
    in teh file Passenger.js

Leave a Reply