Module augmentation
Forstå, hvordan du udvider eller ændrer eksisterende moduler og biblioteker, så de passer bedre til dit projekts behov.
Module augmentation er en gratis TypeScript Academy-lektion på CoddyKit. Dette er lektion 3 af 3. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i TypeScript Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. TypeScript Academy-kurset indeholder 3 lektioner i alt.
Introduktion til moduludvidelse
Moduludvidelse giver dig mulighed for at udvide eller ændre eksisterende moduler, så du kan føje tilpassede egenskaber eller metoder til biblioteker eller moduler i TypeScript.
Det er især nyttigt, når du arbejder med tredjepartsbiblioteker, der har brug for ekstra funktionalitet eller tilpassede typer.

Hvad er moduludvidelse?
Moduludvidelse indebærer, at du genåbner et eksisterende modul og tilføjer eller ændrer dets typer eller funktionalitet ved hjælp af syntaksen declare module.
Grundlæggende eksempel på moduludvidelse
Her er et eksempel på at udvide modulet express for at tilføje en tilpasset egenskab til objektet Request:
import 'express';
declare module 'express' {
interface Request {
user?: { id: string; role: string };
}
}Brug af udvidede moduler
Efter at modulet er blevet udvidet, kan du bruge den udvidede funktionalitet i din applikation:
import express from 'express';
const app = express();
app.use((req, res, next) => {
req.user = { id: '123', role: 'admin' };
next();
});
app.get('/', (req, res) => {
res.send(`User ID: ${req.user?.id}`);
});Tilføjelse af tilpassede typer til tredjepartsmoduler
Moduludvidelse bruges ofte til at føje tilpassede typer til tredjepartsbiblioteker, der ikke fuldt ud dækker dit anvendelsesområde.
Forholdsregler ved moduludvidelse
Vær opmærksom på følgende ved moduludvidelse:
- Undgå utilsigtet at overskrive eksisterende typer.
- Dokumentér dine ændringer, så koden bliver lettere at vedligeholde.
- Brug kun moduludvidelse, når det er nødvendigt, for at undgå rod i globale typer.
Praktiske anvendelser
Moduludvidelse bruges ofte til:
- At udvide tredjepartsbiblioteker med applikationsspecifikke egenskaber.
- At tilføje tilpassede middleware-egenskaber i rammeværk som Express.js.
- At tilpasse moduler til specifikke projektkrav.
Øvelsesopgave
Udvid objektet Request fra modulet express, så det indeholder en tilpasset metode isAuthenticated. Brug denne metode i en eksempel-middlewarefunktion.
Tillykke!
Du har lært at bruge moduludvidelse til at udvide eller ændre eksisterende moduler i TypeScript. Øv dig i denne færdighed for at tilpasse tredjepartsbiblioteker og forbedre dine applikationer!

Lær TypeScript med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 101
- Lektioner
- 352
Ofte stillede spørgsmål
Er lektionen “Module augmentation” gratis?
Ja — hele teksten til “Module augmentation” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af TypeScript Academy-kurset, skal du opgradere til CoddyKit PRO. TypeScript Academy-kurset indeholder 3 lektioner i alt.
Hvad lærer jeg i “Module augmentation”?
Forstå, hvordan du udvider eller ændrer eksisterende moduler og biblioteker, så de passer bedre til dit projekts behov. Du øver dig i TypeScript Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på TypeScript Academy?
Der kræves ingen tidligere erfaring. TypeScript Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 3.
Hvor lang tid tager lektionen “Module augmentation”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne TypeScript Academy-lektion?
Ja. Alle TypeScript Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Streng null-kontrol
- Dynamisk oprettelse af typer
- Module augmentation