카드 내용 부분을 썸네일로 수정하기 #5
-
썸네일 띄워주려면 Blog.js에서도 수정을 해줘야 하나..? blog.js를 수정하면 포스트를 작성할 때 frontmatter에 image가 childImageSharp 형태로 넘어가게 해야하는건지 조사 중인데 어떤 방법을 쓰는게 나을까요? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
이미지 로딩일단 gatsby 공식문서를 읽어보시면 2가지 방식의 이미지 분류가 있는걸 알 수 있습니다.
문서에 따르면 CMS는 지원군에 해당사항이 없으니 공식문서에서 제안하는 그럼 어디에 있는 쿼리를 수정해야 하느냐? js 파일들을 유심히 보시면 감이 오는데요 결론적으로, post.js와 index-template.js 모두 쿼리 수정을 해주어야 합니다. frontmatter {
...
image {
childImageSharp {
gatsbyImageData(placeholder: BLURRED)
}
}
...
} 이미지 스타일링질문에선 PostListImage로 한 뎁스 더 감싸고 있는데, style 적용법은 이 문서를 참고하시면 됩니다.
디자인은 이런식으로 나오면 좋을 것 같아요. 비율은 16:9로 맞췄습니다. |
Beta Was this translation helpful? Give feedback.
이미지 로딩
일단 gatsby 공식문서를 읽어보시면 2가지 방식의 이미지 분류가 있는걸 알 수 있습니다.
하나는 static이고 다른 하나는 dynamic인데요, 저희의 case는 dynamic에 해당한다고 볼 수 있습니다.
따라서
GatsbyImage
를 사용하는 것은 맞습니다.문서에 따르면 CMS는 지원군에 해당사항이 없으니 공식문서에서 제안하는
gatsby-transformer-sharp
를 사용해야 합니다.그러므로 graphql query에 image가
childImageSharp
형태로 작성되어야 하는것이 맞습니다.그럼 어디에 있는 쿼리를 수정해야 하느냐? js 파일들을 유심히 보시면 감이 오는데요
blog.js인것은 맞지만 이건 네비게이션에서 post를 클릭했을때의 페이지입니다. 이는 메인 홈 화면과는 다른 페이지죠. 메인 홈은 index-template.js로 렌더링합니다.
결론적으로, post.js와 index-template.js 모두 쿼리 수정을 해주어야 합니다.
다만 질문에 남겨주신 스택오버플로 레퍼대로 작성하시면 안되고 하단과 같이 최신 gatsby 공식문서를 따라야 합니다.
(여러가지 옵션이 있는데 placeholder 옵…