front-end/team-project
[react] 리액트 pagination 구현(react-js-pagination)
행인데어
2022. 9. 23. 21:58
9/23
클론코딩 팀프로젝트 중에 페이지 넘기는 방법을 무한스크롤에서 pajination으로 변경함
라이브러리 설치
npm install react-js-pagination
사용
1. 라이브러리 import
import Pagination from 'react-js-pagination';
2. parameter로 사용할 state 설정
const [page, setPage] = useState(1); //페이지 설정
const [items, setItems] = useState(18); //한페이지에 보여줄 데이터 갯수
const handlePageChange = page => { //페이지 바뀔때 함수
setPage(page);
};
const length = props.product.length; //전체 데이터 갯수
3. Pagenation 구현할 부분에 넣기
<PaginationWapper> //Styled-component임
<Pagination
activePage={page} //현재 페이지
itemsCountPerPage={items} //페이지당 아이템 갯수
totalItemsCount={length} //전체 아이템 갯수
pageRangeDisplayed={10} //한번에 보여지는 페이지 range
onChange={handlePageChange} //페이지 바뀔때 핸들링하는 함수
hideNavigation={true} //navigation 버튼 숨기기(prev page, next page)
hideFirstLastPages={true} //첫페이지, 끝페이지 버튼 숨기기
/>
</PaginationWapper>
4. style 설정
결과
참고: https://www.npmjs.com/package/react-js-pagination