Introduzione ai Moduli in Angular
Immagina di costruire un'applicazione. All'inizio, è solo un singolo file — come main.ts
. Ma andando avanti, inizi ad aggiungere altri elementi: componenti, servizi, stili, logica, gestione dei dati, autenticazione e così via.
Prima o poi, le cose iniziano a diventare disordinate — è difficile capire cosa viene utilizzato dove o come tutto si collega.
È proprio in questi momenti che la modularità diventa la tua migliore alleata.
Che cos'è un modulo in Angular?
Un modulo è un modo per raggruppare parti correlate della tua applicazione in blocchi separati e gestibili, facili da mantenere, riutilizzare e testare.
Pensa a un modulo come a una scatola in cui conservi tutto ciò che è relativo a una funzionalità specifica. Ad esempio, tutto ciò che riguarda l'utente potrebbe essere inserito in un UserModule
.
In Angular, un modulo è semplicemente una classe contrassegnata dal decoratore @NgModule
, come segue:
app-component.ts
Ecco cosa fa ciascuna parte:
-
declarations
– elenca i componenti, le direttive e i pipe che appartengono a questo modulo; -
imports
– importa altri moduli da cui questo modulo dipende (comeBrowserModule
per l'accesso al DOM); -
providers
– dichiara i servizi (per l'iniezione delle dipendenze) disponibili in questo modulo; -
bootstrap
– definisce il componente principale da caricare all'avvio dell'applicazione (di solitoAppComponent
).
Fondamentalmente, un modulo definisce quali dipendenze accetta, quali risorse rende disponibili ad altri moduli e così via.
Qualsiasi componente che interagisce con questo modulo può utilizzare i servizi e le altre risorse che esso fornisce.
Perché al momento non stiamo usando i moduli
A partire da Angular 14, esiste una nuova alternativa: i componenti standalone.
Questi permettono di creare e utilizzare un componente senza inserirlo in un modulo. Li abbiamo effettivamente utilizzati durante tutto il nostro progetto, e si presentano così:
task-component.ts
Questo è un componente standalone — il che significa che non deve essere elencato in alcun NgModule sotto declarations. Invece, tutto ciò di cui ha bisogno (come direttive, pipe o altri moduli) viene importato direttamente tramite la proprietà imports all'interno del componente stesso.
Questo rende la struttura del progetto più leggera e flessibile — particolarmente utile per applicazioni di piccole dimensioni o blocchi di funzionalità isolati.
Approfondiremo i componenti standalone più avanti in questa sezione.
Anche se i progetti Angular più recenti non richiedono i moduli, li incontrerai comunque spesso:
-
Le applicazioni aziendali più datate sono interamente costruite utilizzando i moduli;
-
Molti tutorial, documentazioni ed esempi sono ancora scritti con
NgModule
; -
Alcune librerie di terze parti e framework UI utilizzano ancora l'approccio basato sui moduli.
Ecco perché dedicheremo un po' di tempo a imparare come funziona NgModule
— così potrai leggere e mantenere con sicurezza i vecchi codebase.
1. Qual è lo scopo principale di un modulo in Angular?
2. Cosa viene solitamente incluso nel decoratore @NgModule
?
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you explain more about standalone components in Angular?
Why would I still need to use modules in a modern Angular project?
How do I decide between using modules and standalone components?
Awesome!
Completion rate improved to 3.13
Introduzione ai Moduli in Angular
Scorri per mostrare il menu
Immagina di costruire un'applicazione. All'inizio, è solo un singolo file — come main.ts
. Ma andando avanti, inizi ad aggiungere altri elementi: componenti, servizi, stili, logica, gestione dei dati, autenticazione e così via.
Prima o poi, le cose iniziano a diventare disordinate — è difficile capire cosa viene utilizzato dove o come tutto si collega.
È proprio in questi momenti che la modularità diventa la tua migliore alleata.
Che cos'è un modulo in Angular?
Un modulo è un modo per raggruppare parti correlate della tua applicazione in blocchi separati e gestibili, facili da mantenere, riutilizzare e testare.
Pensa a un modulo come a una scatola in cui conservi tutto ciò che è relativo a una funzionalità specifica. Ad esempio, tutto ciò che riguarda l'utente potrebbe essere inserito in un UserModule
.
In Angular, un modulo è semplicemente una classe contrassegnata dal decoratore @NgModule
, come segue:
app-component.ts
Ecco cosa fa ciascuna parte:
-
declarations
– elenca i componenti, le direttive e i pipe che appartengono a questo modulo; -
imports
– importa altri moduli da cui questo modulo dipende (comeBrowserModule
per l'accesso al DOM); -
providers
– dichiara i servizi (per l'iniezione delle dipendenze) disponibili in questo modulo; -
bootstrap
– definisce il componente principale da caricare all'avvio dell'applicazione (di solitoAppComponent
).
Fondamentalmente, un modulo definisce quali dipendenze accetta, quali risorse rende disponibili ad altri moduli e così via.
Qualsiasi componente che interagisce con questo modulo può utilizzare i servizi e le altre risorse che esso fornisce.
Perché al momento non stiamo usando i moduli
A partire da Angular 14, esiste una nuova alternativa: i componenti standalone.
Questi permettono di creare e utilizzare un componente senza inserirlo in un modulo. Li abbiamo effettivamente utilizzati durante tutto il nostro progetto, e si presentano così:
task-component.ts
Questo è un componente standalone — il che significa che non deve essere elencato in alcun NgModule sotto declarations. Invece, tutto ciò di cui ha bisogno (come direttive, pipe o altri moduli) viene importato direttamente tramite la proprietà imports all'interno del componente stesso.
Questo rende la struttura del progetto più leggera e flessibile — particolarmente utile per applicazioni di piccole dimensioni o blocchi di funzionalità isolati.
Approfondiremo i componenti standalone più avanti in questa sezione.
Anche se i progetti Angular più recenti non richiedono i moduli, li incontrerai comunque spesso:
-
Le applicazioni aziendali più datate sono interamente costruite utilizzando i moduli;
-
Molti tutorial, documentazioni ed esempi sono ancora scritti con
NgModule
; -
Alcune librerie di terze parti e framework UI utilizzano ancora l'approccio basato sui moduli.
Ecco perché dedicheremo un po' di tempo a imparare come funziona NgModule
— così potrai leggere e mantenere con sicurezza i vecchi codebase.
1. Qual è lo scopo principale di un modulo in Angular?
2. Cosa viene solitamente incluso nel decoratore @NgModule
?
Grazie per i tuoi commenti!