Angular

Services & Dependency Injection

Services, @Injectable, providedIn, dependency injection, hierarchical injectors, injection tokens, providers

20 domande da colloquio·
Junior
1

Cos'è un service in Angular?

Risposta

Un service è una classe TypeScript decorata con @Injectable che incapsula logica di business o dati condivisi. I service seguono il principio della separazione delle responsabilità estraendo la logica riutilizzabile dai componenti. Possono essere iniettati in altre classi grazie al sistema di dependency injection di Angular, favorendo la modularità e la testabilità del codice.

2

Quale decorator rende una classe injectable in Angular?

Risposta

Il decorator @Injectable è obbligatorio affinché una classe possa essere utilizzata come service nel sistema di dependency injection di Angular. Questo decorator permette ad Angular di generare i metadati necessari per risolvere le dipendenze del service. Senza @Injectable, il compilatore TypeScript non manterrebbe le informazioni sui tipi necessarie per l'injection, causando errori a runtime.

3

Qual è la sintassi corretta per creare un service di base?

Risposta

La sintassi completa per creare un service Angular include l'importazione del decorator Injectable da @angular/core, quindi la sua applicazione a una classe con l'opzione providedIn. Questa configurazione moderna registra automaticamente il service nell'injector radice dell'applicazione. L'opzione providedIn: 'root' è la best practice poiché abilita il tree-shaking e garantisce un singleton globale.

4

Cosa significa providedIn: 'root' in @Injectable?

5

Come iniettare un service in un componente?

+17 domande da colloquio

Padroneggia Angular per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis