현제 페이지 위치값을 기억하는 변수값을 가지고있어야한다.
전역으로 관리되어야하는 상태값이므로 전역변수로 선언하여 사용한다.
const store = {
currentPage: 1
}
function newsFeed() {
// ...
newsList.push(`
<div>
<a href="#/page/${store.currentPage - 1}">이전 페이지</a>
<a href="#/page/${store.currentPage + 1}">다음 페이지</a>
</div>
`);
containerEl.innerHTML = newsList.join("");
function newsFeed() {
// ...
for (let i = (store.currentPage - 1) * 10; i < store.currentPage * 10; i++) {
newsList.push(`
<li>
<a href="#/show/${newsFeed[i].id}">
${newsFeed[i].title}(${newsFeed[i].comments_count})
</a>
</li>
`);
}
// ...
}
function newsDetail() {
//...
containerEl.innerHTML = `
<h1>${newsContent.title}</h1>
<div>
<a href="#/page/${store.currentPage}">목록으로</a>
</div>
`;
//...
}
function router() {
const routePath = location.hash;
if (routePath === "") {
newsFeed();
} else if (routePath.indexOf("#/page/") >= 0) {
const page = Number(routePath.substr(7));
store.currentPage = page;
newsFeed();
} else {
newsDetail();
}
}