🚀 Capítulo 02: Estrutura de Arquivos e Primeiro Componente
Leitura de 4 min
🚀 Capítulo 02: Estrutura de Arquivos e Primeiro Componente
🎯 Objetivo da Aula
Ao final desta aula, você entenderá como os arquivos de um projeto Angular se organizam, a função de cada um deles e será capaz de criar seu primeiro componente customizado para construir a interface da sua aplicação.
🏢 O Cenário Prático (Seu Desafio)
Para pilotar sua nave na velocidade da luz, você precisa de um painel de controle que exiba os dados dos sistemas. Seu desafio hoje é criar o componente do Painel de Controle da sua nave e entender onde cada peça desse sistema fica guardada no projeto!
🧠 Fundamentos: A Teoria Traduzida
Um projeto Angular criado pela CLI vem com muitos arquivos. Vamos focar nos mais importantes que ficam dentro da pasta src/app:
app.component.ts: É o cérebro do componente principal. Aqui fica a lógica.
app.component.html: É a carcaça. Aqui fica o HTML que o usuário vê.
app.component.css: É a pintura. Aqui ficam os estilos visuais.
O que é um Componente?
Pense em um componente como uma peça de Lego ou um bloco de comando da sua nave. Ele é independente e pode ser reutilizado. Cada componente tem um Seletor (uma tag HTML customizada) que você usa para colocá-lo na tela.
📖 Exemplo Guiado: Criando o Painel de Controle
Vamos usar a CLI para gerar um novo componente automaticamente.
🛠️ Passo a Passo para Criar o Componente
Abra o terminal na pasta do seu projeto (academia-jedi).
Digite o comando de geração:
ng generate component painel-controle
(Você também pode usar o atalho: ng g c painel-controle)
A CLI criará uma pasta chamada painel-controle dentro de src/app com 4 arquivos.
Editando o Componente
Abra o arquivo src/app/painel-controle/painel-controle.component.html e mude o texto para:
<div class="painel"> <h2>🎛️ Painel de Controle da Nave</h2> <p>Status dos Sistemas: **Operacional**</p></div>
Como Usar o Componente
Para que ele apareça na tela, precisamos usar o seu seletor no arquivo principal.
Abra src/app/painel-controle/painel-controle.component.ts e veja que o selector é 'app-painel-controle'.
Abra src/app/app.component.html e adicione a tag do seu componente:
<h1>Academia Jedi de Angular</h1><app-painel-controle></app-painel-controle>
🕹️ Como Executar e Testar no VS Code
Salve todos os arquivos.
No terminal, execute:
ng serve
Abra o navegador em http://localhost:4200/.
Resultado Esperado:
Você deve ver o título “Academia Jedi” e, logo abaixo, a caixa do seu novo componente com o texto “Painel de Controle da Nave”.
🛠️ Prática Obrigatória 1
Crie um novo componente chamado status-escudo usando a CLI.
No HTML dele, coloque uma mensagem dizendo: “🛡️ Escudos em 100%“.
Adicione esse componente no seu app.component.html logo abaixo do painel de controle.
🛠️ Prática Obrigatória 2
Abra o arquivo de estilos do componente do escudo (status-escudo.component.css) e adicione uma regra para deixar o texto verde:
p { color: green; font-weight: bold;}
📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
Faça o Commit: No GitHub Desktop, digite a mensagem (ex: Finaliza Capítulo 02) e clique em Commit to main.
Envie para a Nuvem (Push): Clique em Push origin.
⚠️ IMPORTANTE: Seu repositório DEVE SER PÚBLICO.
No Microsoft Teams:
Copie o link do seu repositório.
Cole na tarefa correspondente no Teams.
Clique em Entregar.
💡 Checkpoint de Lógica
Ao usar componentes, você está dividindo o problema grande em partes pequenas. Se o escudo quebrar, você só precisa mexer no código do componente de escudo, sem estragar o resto da nave!
🔥 Desafio de Fixação (Opcional)
Tente criar um componente chamado radar e use CSS para fazer uma borda circular ao redor dele.
🔑 Gabarito de Código/Fórmulas
Prática 1:
Comando: ng g c status-escudo
No app.component.html: