import React from 'react'; function EgovPaging(props) { console.groupCollapsed("EgovPaging"); console.log("EgovPaging [props] : ", props); let paginationTag = []; if (props.pagination === undefined) { paginationTag = "-"; } else { const currentPageNo = props.pagination.currentPageNo; const pageSize = props.pagination.pageSize; const totalRecordCount = props.pagination.totalRecordCount; const recordCountPerPage = props.pagination.recordCountPerPage; const totalPageCount = Math.ceil(totalRecordCount / recordCountPerPage); const currentFirstPage = Math.floor((currentPageNo - 1) / pageSize) * pageSize + 1; let currentLastPage = currentFirstPage + pageSize - 1; currentLastPage = (currentLastPage > totalPageCount) ? totalPageCount : currentLastPage; if (totalPageCount > pageSize) { // 첫 페이지 이동 const firstPageTag =
  • ; paginationTag.push(firstPageTag); // 이전 페이지 이동 const prevPageIndex = (currentPageNo - 1 > 0) ? currentPageNo - 1 : 1; const previousPageTag =
  • ; paginationTag.push(previousPageTag); } for (let i = currentFirstPage; i <= currentLastPage; i++) { if (i === currentPageNo) { // 현재 페이지 const currentPage =
  • ; paginationTag.push(currentPage); } else { // 다른 페이지 const otherPage =
  • ; console.log("@@@ otherpage : " + otherPage); paginationTag.push(otherPage); } } if (totalPageCount > pageSize) { // 다음 페이지 이동 const nextPageIndex = (currentLastPage + 1 < totalPageCount) ? currentLastPage + 1 : totalPageCount; const nextPageTag =
  • ; paginationTag.push(nextPageTag); // 마지막 페이지 이동 const lastPageTag =
  • ; paginationTag.push(lastPageTag); } } console.log("paginationTag", paginationTag); console.groupEnd("EgovPaging"); return (
    ); } export default React.memo(EgovPaging);