Overgang til Frittstående Komponenter
I tidligere versjoner av Angular måtte hver komponent være en del av et modul. Selv den enkleste komponenten kunne ikke eksistere alene — den måtte deklareres i en NgModule.
Dette kan sammenlignes med å trenge et helt kjøkken bare for å lage en kopp te. Ganske tungvint, ikke sant?
Derfor begynte Angular-teamet etter hvert å forenkle strukturen. Dette førte til introduksjonen av en ny tilnærming — Standalone Components.
Hva er en Standalone Component?
En Standalone Component er en komponent som ikke krever deklarasjon i et modul (NgModule). Den er selvstendig, noe som betyr at den inneholder all informasjon om sine avhengigheter i seg selv.
For å opprette en, legger du ganske enkelt til flagget standalone: true inne i @Component-dekoratøren og angir nødvendige avhengigheter ved å bruke imports-arrayet:
example.ts
Her er det å legge til standalone: true et spesielt alternativ i @Component-dekoratøren som forteller Angular at denne komponenten er selvstendig — den trenger ikke å deklareres i en NgModule.
Vi angir også en liste over eksterne avhengigheter (imports) som komponenten krever. I den tradisjonelle modulbaserte tilnærmingen ble disse avhengighetene lagt til modulens imports. Men når komponenter fungerer uten en modul, må avhengighetene deklareres direkte i komponenten — og Angular fungerer som en modul internt for denne komponenten.
Hvorfor beveger Angular seg bort fra NgModules?
NgModules har spilt en viktig rolle i store applikasjoner:
-
De bidro til å organisere koden;
-
De ga kontroll over omfang (synlighet);
-
De var nyttige for optimalisering.
Men over tid ble det tydelig at mange av disse tingene kan håndteres på komponentnivå — enklere og mer intuitivt.
Angular har ikke fjernet moduler — frittstående komponenter gir bare et mer fleksibelt alternativ.
Med andre ord er frittstående komponenter den moderne måten å bygge komponenter på uten moduler. De forenkler strukturen, gjør komponentene selvstendige og enklere å bruke.
Angular støtter fortsatt moduler, men anbefaler å bruke frittstående komponenter for ny kode.
1. Hva gjør standalone: true i en komponentdekoratør?
2. Hvorfor er imports-egenskapen nødvendig i en frittstående komponent?
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 3.13
Overgang til Frittstående Komponenter
Sveip for å vise menyen
I tidligere versjoner av Angular måtte hver komponent være en del av et modul. Selv den enkleste komponenten kunne ikke eksistere alene — den måtte deklareres i en NgModule.
Dette kan sammenlignes med å trenge et helt kjøkken bare for å lage en kopp te. Ganske tungvint, ikke sant?
Derfor begynte Angular-teamet etter hvert å forenkle strukturen. Dette førte til introduksjonen av en ny tilnærming — Standalone Components.
Hva er en Standalone Component?
En Standalone Component er en komponent som ikke krever deklarasjon i et modul (NgModule). Den er selvstendig, noe som betyr at den inneholder all informasjon om sine avhengigheter i seg selv.
For å opprette en, legger du ganske enkelt til flagget standalone: true inne i @Component-dekoratøren og angir nødvendige avhengigheter ved å bruke imports-arrayet:
example.ts
Her er det å legge til standalone: true et spesielt alternativ i @Component-dekoratøren som forteller Angular at denne komponenten er selvstendig — den trenger ikke å deklareres i en NgModule.
Vi angir også en liste over eksterne avhengigheter (imports) som komponenten krever. I den tradisjonelle modulbaserte tilnærmingen ble disse avhengighetene lagt til modulens imports. Men når komponenter fungerer uten en modul, må avhengighetene deklareres direkte i komponenten — og Angular fungerer som en modul internt for denne komponenten.
Hvorfor beveger Angular seg bort fra NgModules?
NgModules har spilt en viktig rolle i store applikasjoner:
-
De bidro til å organisere koden;
-
De ga kontroll over omfang (synlighet);
-
De var nyttige for optimalisering.
Men over tid ble det tydelig at mange av disse tingene kan håndteres på komponentnivå — enklere og mer intuitivt.
Angular har ikke fjernet moduler — frittstående komponenter gir bare et mer fleksibelt alternativ.
Med andre ord er frittstående komponenter den moderne måten å bygge komponenter på uten moduler. De forenkler strukturen, gjør komponentene selvstendige og enklere å bruke.
Angular støtter fortsatt moduler, men anbefaler å bruke frittstående komponenter for ny kode.
1. Hva gjør standalone: true i en komponentdekoratør?
2. Hvorfor er imports-egenskapen nødvendig i en frittstående komponent?
Takk for tilbakemeldingene dine!