Services & Dependency Injection
Services, @Injectable, providedIn, dependency injection, hierarchical injectors, injection tokens, providers
1O que é um service no Angular?
O que é um service no Angular?
Resposta
Um service é uma classe TypeScript decorada com @Injectable que encapsula lógica de negócio ou dados compartilhados. Os services seguem o princípio de separação de responsabilidades ao extrair lógica reutilizável dos componentes. Podem ser injetados em outras classes através do sistema de dependency injection do Angular, promovendo a modularidade e a testabilidade do código.
2Qual decorator torna uma classe injetável no Angular?
Qual decorator torna uma classe injetável no Angular?
Resposta
O decorator @Injectable é obrigatório para que uma classe possa ser usada como service no sistema de dependency injection do Angular. Este decorator permite ao Angular gerar os metadados necessários para resolver as dependências do service. Sem @Injectable, o compilador TypeScript não preservaria as informações de tipos necessárias para a injeção, causando erros em tempo de execução.
3Qual é a sintaxe correta para criar um service básico?
Qual é a sintaxe correta para criar um service básico?
Resposta
A sintaxe completa para criar um service Angular inclui importar o decorator Injectable de @angular/core e depois aplicá-lo a uma classe com a opção providedIn. Esta configuração moderna registra automaticamente o service no injector raiz da aplicação. A opção providedIn: 'root' é a melhor prática pois permite tree-shaking e garante um singleton global.
O que significa providedIn: 'root' no @Injectable?
Como injetar um service em um componente?
+17 perguntas de entrevista
Outros temas de entrevista Angular
Fundamentos do TypeScript
TypeScript Avançado
Fundamentos do Angular
Componentes e ciclo de vida
Organização de Módulos Angular
Angular CLI
Diretivas e Pipes
Routing e Navegação
Formulários reativos
Formulários template-driven
Fundamentos do RxJS
Operadores RxJS
HttpClient e chamadas de API
Gerenciamento de estado básico
Change Detection
Angular Signals
Standalone Components
Testes unitários em Angular
Testes End-to-End
Build e otimização
Fundamentos do NgRx
NgRx avançado
Arquitetura Angular
Otimização de desempenho
Segurança e boas práticas
Padrões avançados de RxJS
Angular Universal e SSR
Micro-frontends Angular
Domine Angular para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis