0.0.2 • Published 2 years ago

react-responsive-pagination-component v0.0.2

Weekly downloads
-
License
MIT
Repository
-
Last release
2 years ago

react-responsive-pagination-component


example

Usage

import React, { useState } from "react";
import { Pagination, usePagination } from "react-responsive-pagination-hook";

function App() {
  const DATA = Array(20)
    .fill({})
    .map((_, index) => ({
      id: index,
      name: `SECHO-${index}`,
    }));
  const [data, setData] = useState([...DATA]);
  const { handlePageClick, totalPageCount, currPageNum, displayData } =
    usePagination({
      data: data,
      delay: 0,
      resize: true,
      responsiveOption: {
        breakPoint: 768,
        delay: 200,
        breakPointUnderViewCount: 6,
        breakPointOverViewCount: 10,
      },
    });
  const handleDelete = (e: any) => {
    const { id } = e.target.dataset;
    setData([...data.filter((item) => item.id != id)]);
  };
  return (
    <div className="App">
      <div>
        {displayData.map((item: any, _: number) => (
          <div key={item.id}>
            <span>{item.name}</span>
            <button onClick={handleDelete} data-id={item.id}>
              X
            </button>
          </div>
        ))}
      </div>
      <Pagination {...{ totalPageCount, currPageNum, handlePageClick, data }} />
    </div>
  );
}

Hook Props


ParameterDescriptionTypeDefault
dataTotal dataarray[]
resizeset resize optionbooleanFalse
delayDebounce delay for resizeNumber0
responsiveOptionObjectarray[]

responsiveOption Props


ParameterDescriptionTypeDefault
breakPointResponsive break point width pxarray[]
breakPointUnderViewCountNumber of items displayed when less than the breakpointNumber6
breakPointOverViewCountNumber of items displayed when greater than the breakpointNumber10

Pagination Component Props


ParameterDescriptionTypeDefault
totalPageCounttotal page countnumber-
currPageNumcurrent page numbernumber-
handlePageClickPage change callbackFunction(pageNumber)
dataTotal dataarray[]
customStyleCustom style propsObject

Custom Style Props


ParameterDescriptionTypeDefault
buttonBgColorPagination Background colorString"#1590fe"
numberColornumber colorString"white"
customLeftArrowIconArrow IconReact.ReactElement | string"<"
customLeftArrowsIconArrow IconReact.ReactElement | string"<<"
customRightArrowIconArrow IconReact.ReactElement | string
customRightArrowsIconArrow IconReact.ReactElement | string">>"
maxWidthpagination container max widthString-
marginpagination container marginString-
fontSizeFont sizeString-