TypeScript Academy · leksjon

@types/node, ESM kontra CJS i Node

@types/node tilbyr typetilordninger for Node-API-er, og module-alternativene i tsconfig lar deg velge mellom CommonJS og ESM.

Leksjon 1 av 28 trinn

@types/node, ESM kontra CJS i Node er en gratis leksjon i TypeScript Academy på CoddyKit. Dette er leksjon 1 av 2. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i TypeScript Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i TypeScript Academy inneholder totalt 2 leksjoner.

Introduksjon

Mål: Bruk @types/node for typesikkerhet, og konfigurer TS for CommonJS kontra ES-moduler.

Installer type­definisjoner

Installer @types/node for å få typedefinisjoner for innebygde Node-API-er som fs og path.

npm install --save-dev @types/node

Globale Node-navn

Med @types/node blir globale navn som process, __dirname og __filename gjenkjent med riktige typer.

console.log(process.version);
console.log(__dirname);
console.log(__filename);

CJS-eksempel

CommonJS: Standard i Node. Bruk require og module.exports.

// CommonJS style
const fs = require("fs");
const data = fs.readFileSync("file.txt", "utf8");
console.log(data);

ESM-eksempel

ESM: Moderne syntaks med import/export. Krever tsconfig "module": "ESNext" og "type": "module" i package.json.

// ES Module style
import fs from "fs";
const data = fs.readFileSync("file.txt", "utf8");
console.log(data);

tsconfig-moduler

Styr modulsystemet i tsconfig.json. Bytt module mellom CommonJS og ESNext.

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "CommonJS",
    "moduleResolution": "node"
  }
}

Kontroll av typedefinisjoner

Hurtigsjekk: Hvorfor installere @types/node?

Oppsummering

Oppsummering: @types/node legger til typedefinisjoner. CommonJS bruker require, mens ESM bruker import. tsconfig bestemmer modulsystemet.

Gratis å komme i gang

Lær deg TypeScript med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
101
Leksjoner
352

Ofte stilte spørsmål

Er leksjonen «@types/node, ESM kontra CJS i Node» gratis?

Ja – hele teksten i «@types/node, ESM kontra CJS i Node» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av TypeScript Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i TypeScript Academy inneholder totalt 2 leksjoner.

Hva lærer jeg i «@types/node, ESM kontra CJS i Node»?

@types/node tilbyr typetilordninger for Node-API-er, og module-alternativene i tsconfig lar deg velge mellom CommonJS og ESM. Du øver på TypeScript Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med TypeScript Academy?

Ingen tidligere erfaring er nødvendig. TypeScript Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 2.

Hvor lang tid tar leksjonen «@types/node, ESM kontra CJS i Node»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne TypeScript Academy-leksjonen?

Ja. Alle TypeScript Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. @types/node, ESM kontra CJS i Node
  2. Kjøretidsalternativer (ts-node/tsx) og sourcemaps
← Tilbake til TypeScript Academy