Agora que você tem algumas postagens do blog para adicionar links para, é hora de configurar a página Blog para criar uma lista de postagens automaticamente!
Se prepare para...
Acessar dados de todas as suas postagens de uma vez utilizando Astro.glob()
Mostrar uma lista dinamicamente gerada de postagens na sua página Blog
Refatorar para utilizar um componente <PostBlog /> para cada item da lista
Dinamicamente mostre uma lista de postagens
Adicione o seguinte código em blog.astro para retornar informação sobre todos os seus arquivos Markdown. Astro.glob() irá retornar um array de objetos, um de cada postagem do blog.
Para gerar a lista inteira de postagens dinamicamente, utilizando os títulos das postagens e URLs, substitua suas tags <li> individuais com o seguinte código Astro:
Sua lista inteira de postagens do blog agora está sendo gerada dinamicamente, por mapear o array retornado por Astro.glob().
Adicione uma nova postagem do blog adicionando um novo arquivo post-4.md em src/pages/posts/ e adicionando algum conteúdo Markdown. Certifique-se de pelo menos adicionar as propriedades de frontmatter usadas abaixo.
Revisite a página do seu blog na pré-visualização do seu navegador em http://localhost:4321/blog e procure por uma lista atualizada com quatro itens, incluindo sua nova postagem no blog!
Desafio: Crie um componente de Postagem do Blog
Tente sozinho fazer todas as mudanças necessárias ao seu projeto Astro para que você ao invés disso, utilize o seguinte código para gerar sua lista de postagens do blog:
Expanda para ver as etapas
Crie um novo componente em src/components/.
Me mostre o nome do arquivo
Escreva a linha de código no seu componente para que ele seja capaz de receber um titulo e url como Astro.props.
Mostre o código
Adicione o template utilizado para criar cada item na sua lista de postagens do blog.
Mostre o código
Importe o novo componente em sua página Blog.
Mostre o código
Verifique você mesmo: veja o código completo do componente.
Mostre o código
Teste seu conhecimento
Se o seu componente Astro contém a seguinte linha de código:
Escolha a sintaxe que você pode escrever para representar:
O título da sua terceira postagem do blog.
Um link para a URL da sua primeira postagem do blog.
Um componente para cada postagem, mostrando a data que ele foi atualizado pela última vez.