Gridsome에서 페이지 매김을 설정하는 방법
5796 단어 vuewebdevjavascriptbeginners
그리드썸이란?
Gridsome은 어디서나 배포할 수 있는 빠르고 안전한 웹사이트를 만들기 위한 최신 웹사이트 개발 프레임워크입니다. 정적 HTML 파일은 브라우저에 로드되면 Vue.js 기반 SPA로 수화되는 SEO 친화적인 마크업을 생성하기 위해 생성됩니다. Gridsome은 또한 페이지 매김 설정을 그 어느 때보다 쉽게 만들었습니다 😄
Gridsome 페이지 매김 설정 단계
블로그 게시물을 가져오는 Gridsome 블로그가 이미 있고 새 기능으로 페이지 매김을 추가하고 있다고 가정합니다. 이 경우 따라야 할 단계는 다음과 같습니다.
- GraphQL 쿼리에서 페이지 매김 설정
- Gridsome의 Pager 컴포넌트 가져오기
- 필요한 스타일링 추가
GraphQL 쿼리에서 페이지 매김 설정
데이터 수집은 Gridsome의 GraphQL 쿼리에 의해 처리됩니다. GraphQL 쿼리에서 @paginate 지시문을 사용하여 컬렉션에 대한 자동 페이지 매김을 추가할 수 있습니다.
쿼리는 특정 페이지의 소스를 로드하는 데 사용할 수 있는 $page: Int 변수를 받습니다.
query ($page: Int) {
allBlogPost(perPage: 10, page: $page) @paginate {
pageInfo {
totalPages
currentPage
}
edges {
node {
id
title
path
}
}
}
}
위의 예에서 각 페이지에는 10개의 블로그 게시물이 포함됩니다.
Gridsome의 Pager 컴포넌트 가져오기
Gridsome에는 쉽게 페이지 매김을 위해 가져올 수 있는 내장형 Pager 구성 요소가 있습니다. Gridsome에서 Pager 구성 요소를 가져와 추가합니다.
import { Pager } from 'gridsome';
export default {
components: {
Pager
}
}
Pager 구성 요소는 여러 속성을 허용할 수 있지만 필요한 속성은 "총 페이지 수"및 "현재 페이지"뿐입니다. 이러한 속성은 Pager 구성 요소에 전달하는 "pageInfo"에서 찾을 수 있습니다.
<Pager :info="$page.allBlogPost.pageInfo" />
사용자 정의 스타일 추가
일반 CSS 클래스를 사용하여 페이지 매김 컨테이너의 스타일을 지정할 수 있지만 링크 스타일을 지정하려면 :linkClass 속성을 사용해야 합니다.
주형
<Pager :info="$page.allBlogPost.pageInfo"
class="pager-container"
linkClass="pager-container__link" />
스타일
<style scoped lang="scss">
.pager-container {
display: inline-block;
font-size: 1.5rem;
text-align: center;
width: 100%;
color: black;
&__link {
text-align: center;
padding: 0.6rem 1.2rem;
color: white;
text-decoration: none;
}
}
.active {
background-color: rgb(44, 201, 180);
}
</style>
그게 다 사람들이야. 4개월 동안 꾸준히 글을 쓰고 있어요 🎉😄
How to add Code snippets to Gridsome에 대한 내 기사를 즐길 수도 있습니다.
Read more of my articles
Reference
이 문제에 관하여(Gridsome에서 페이지 매김을 설정하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lindaojo/how-to-set-up-pagination-in-gridsome-1546텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)