블로그 게시물 아카이브 만들기
이제 링크할 블로그 게시물이 몇 개 있으므로 자동으로 게시물 목록을 생성하도록 블로그 페이지를 구성할 차례입니다!
요구 사항
import.meta.glob()
을 사용하여 모든 게시물의 데이터에 한 번에 액세스- 블로그 페이지에 동적으로 생성된 게시물 목록 표시
- 각 목록 항목에
<BlogPost />
컴포넌트를 사용하도록 리팩터링
게시물 목록 동적으로 표시
섹션 제목: 게시물 목록 동적으로 표시-
모든 Markdown 파일에 대한 정보를 반환하려면
blog.astro
에 다음 코드를 추가하세요.import.meta.glob()
은 각 블로그 게시물에 대해 하나씩 객체 배열을 반환합니다. -
게시물 제목과 URL을 사용하여 전체 게시물 목록을 동적으로 생성하려면 개별
<li>
태그를 다음 Astro 코드로 바꾸세요.이제
import.meta.glob()
에서 반환된 배열을 매핑하여 블로그 게시물의 전체 목록이 Astro의 내장 TypeScript 지원을 사용하여 동적으로 생성됩니다. -
src/pages/posts/
에 새post-4.md
파일을 만들고 Markdown 콘텐츠를 추가하여 새 블로그 게시물을 추가하세요. 아래에 사용된 프런트매터 속성을 최소한 포함해야 합니다. -
http://localhost:4321/blog
의 브라우저 미리보기에서 블로그 페이지를 다시 방문하여 새 블로그 게시물을 포함하여 4개 항목이 포함된 업데이트된 목록을 찾아보세요!
과제: BlogPost 컴포넌트 만들기
섹션 제목: 과제: BlogPost 컴포넌트 만들기대신 다음 코드를 사용하여 블로그 게시물 목록을 생성할 수 있도록 Astro 프로젝트에 필요한 모든 변경 사항을 직접 시도해 보세요.
확장하여 단계를 확인하세요.
-
src/components/
에 새 컴포넌트를 만듭니다.파일 이름 표시
-
title
과url
을Astro.props
로 수신할 수 있도록 컴포넌트에 코드 줄을 작성합니다.코드 표시
-
블로그 게시물 목록의 각 항목을 만드는 데 사용된 템플릿을 추가합니다.
코드 표시
-
새 컴포넌트를 블로그 페이지로 가져옵니다.
코드 표시
-
직접 확인: 완성된 컴포넌트 코드를 확인하세요.
코드 표시
지식 테스트
섹션 제목: 지식 테스트Astro 컴포넌트에 다음 코드 줄이 포함되어 있을때
다음을 나타내기 위해 작성할 수 있는 구문을 선택하십시오.
-
세 번째 블로그 게시물의 제목
-
첫 번째 블로그 게시물의 URL에 대한 링크
-
마지막으로 업데이트된 날짜를 표시하는 각 게시물의 컴포넌트