0Pricing
Angular Academy · Lezione

Creare una libreria con ng generate

Creare lo scheletro di un progetto libreria

Creare una libreria con ng generate è una lezione Angular Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Angular Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Angular Academy include 4 lezioni in totale.

Perché creare una libreria

Quando più app hanno bisogno degli stessi componenti, servizi o strumenti, può racchiuderli in una libreria Angular. Una libreria è riutilizzabile, versionata e pubblicabile, invece di copiare e incollare il codice tra i progetti.

I workspace contengono le librerie

Le librerie risiedono all'interno di un workspace Angular: una cartella gestita da un unico angular.json che può contenere più app e librerie. Può aggiungere una libreria a un workspace esistente oppure crearne uno dedicato.

ng new my-workspace --create-application=false
# a workspace with no app, ready to hold libraries

Generare una libreria

Lo schematic ng generate library (alias ng g lib) crea lo scheletro di un nuovo progetto di libreria all'interno di projects/.

ng generate library ui-kit
# creates projects/ui-kit with a sample component, module, and public-api.ts

Cosa viene creato

La libreria include una propria cartella src/lib, un barrel public-api.ts, un ng-package.json (per il build) e una voce in angular.json. È un progetto autonomo e compilabile.

projects/ui-kit/
  src/
    lib/        # your components & services
    public-api.ts
  ng-package.json
  package.json

Aggiungere componenti alla libreria

Generi il codice nella libreria indicandola con --project. La CLI inserisce i file nella cartella corretta.

ng generate component button --project=ui-kit
ng generate service theme --project=ui-kit

Componenti standalone nelle librerie

Le librerie moderne preferiscono i componenti standalone, che i consumer importano direttamente senza un NgModule. Imposti standalone: true sul componente, così le app possono usarlo con un semplice import.

@Component({
  selector: 'lib-button',
  standalone: true,
  template: '<button class="lib-btn"><ng-content></ng-content></button>',
})
export class ButtonComponent {}

Il package.json della libreria

Ogni libreria ha il proprio package.json, che definisce nome, versione e peer dependencies come @angular/core. Le peer dependencies indicano che è l'app consumer a fornire Angular, evitando copie duplicate.

{
  "name": "ui-kit",
  "version": "0.0.1",
  "peerDependencies": { "@angular/core": "^18.0.0" }
}

Sviluppare usando un'app locale

Mantenga un'app dimostrativa nello stesso workspace per provare la libreria mentre la sviluppa. L'import tramite il nome della libreria viene risolto nel codice sorgente locale attraverso i mapping dei percorsi TypeScript in tsconfig.

Libreria e applicazione a confronto

Un'applicazione è destinata al deployment; una libreria è destinata a essere utilizzata. Le librerie non possono essere servite direttamente: vengono trasformate in un pacchetto distribuibile e poi pubblicate oppure importate dalle app del workspace.

Mantenga le librerie focalizzate

Una buona libreria ha uno scopo chiaro, come un kit UI o un livello di accesso ai dati. Eviti di inserire insieme codice non correlato: le librerie coerenti sono più facili da versionare, documentare e riutilizzare.

Prossimi passaggi

Una volta creato lo scheletro della libreria, resta da definire la sua API pubblica, compilarla nel formato Angular Package Format e pubblicarla. Le prossime lezioni trattano ciascuno di questi aspetti.

Verifica rapida

Come si crea una libreria?

Riepilogo

Le librerie racchiudono codice riutilizzabile per molte app. Ne crei una con ng generate library all'interno di un workspace: il comando crea lo scheletro di src/lib, public-api.ts, ng-package.json e un package.json con le peer dependencies. Aggiunga il codice tramite --project, preferisca i componenti standalone e mantenga ogni libreria focalizzata.

Domande Frequenti

La lezione «Creare una libreria con ng generate» è gratuita?

Sì — il testo completo di «Creare una libreria con ng generate» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Angular Academy, passa a CoddyKit PRO. Il corso Angular Academy include 4 lezioni in totale.

Cosa imparerò in «Creare una libreria con ng generate»?

Creare lo scheletro di un progetto libreria Eserciti Angular Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Angular Academy?

Non è richiesta alcuna esperienza precedente. Angular Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Creare una libreria con ng generate»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Angular Academy?

Sì. Ogni lezione Angular Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Creare una libreria con ng generate
  2. API pubblica ed entry point
  3. Creare build con ng-packagr
  4. Pubblicare su npm
← Torna a Angular Academy