Hoe u TypeScript-modules kunt maken en gebruiken

TypeScript-modules bieden een gestructureerde aanpak voor het organiseren en beheren van code. Modules maken het mogelijk om code in afzonderlijke bestanden te encapsuleren, wat de onderhoudbaarheid, herbruikbaarheid en testbaarheid verbetert. Deze gids legt het proces uit van het maken en gebruiken van TypeScript-modules.

Wat zijn TypeScript-modules?

TypeScript-modules zijn afzonderlijke bestanden die code-elementen zoals klassen, functies en variabelen exporteren en importeren. Door modules te gebruiken, kan code worden opgesplitst in beheersbare stukken, wat een betere controle over interacties tussen verschillende delen van de code mogelijk maakt.

Een TypeScript-module maken

Om een ​​TypeScript-module te maken, moet u de volgende stappen volgen:

  1. Maak een TypeScript-bestand: Begin met het maken van een nieuw `.ts`-bestand voor de module, bijvoorbeeld `mathUtils.ts`.
  2. Definieer en exporteer code: Implementeer functies, klassen of variabelen in dit bestand en gebruik het trefwoord export om ze beschikbaar te maken voor andere modules.

Voorbeeld van een eenvoudige module:

// mathUtils.ts

export function add(a: number, b: number): number {
  return a + b;
}

export function subtract(a: number, b: number): number {
  return a - b;
}

In dit voorbeeld worden de functies `add` en `subtract` gedefinieerd en geëxporteerd vanuit de module `mathUtils.ts`.

Een TypeScript-module importeren en gebruiken

Om de code van een TypeScript-module in een ander bestand te gebruiken, moet deze worden geïmporteerd. Dit omvat:

  1. Maak een nieuw TypeScript-bestand: Genereer een bestand waarin de code van de module zal worden gebruikt, bijvoorbeeld `app.ts`.
  2. Importeer de module: Gebruik het trefwoord import om functies, klassen of variabelen uit de module te importeren.

Voorbeeld van het importeren en gebruiken van de functies `add` en `subtract`:

// app.ts

import { add, subtract } from './mathUtils';

const sum = add(5, 3);
const difference = subtract(5, 3);

console.log(`Sum: ${sum}`);
console.log(`Difference: ${difference}`);

In dit voorbeeld worden de functies `add` en `subtract` geïmporteerd uit de `mathUtils`-module en gebruikt in het `app.ts`-bestand.

Standaard- en benoemde exporten

TypeScript-modules ondersteunen zowel standaard- als benoemde exports. Hier is een kort overzicht:

  • Standaard export: Een enkele waarde kan worden geëxporteerd als standaard export vanuit een module met behulp van export default.
  • Benoemde exports: Meerdere waarden kunnen worden geëxporteerd vanuit een module met behulp van benoemde exports met het trefwoord export.

Voorbeeld dat beide soorten export illustreert:

// shapes.ts

export default class Circle {
  constructor(public radius: number) {}
  
  area(): number {
    return Math.PI * this.radius ** 2;
  }
}

export function getCircleInfo(radius: number): string {
  const circle = new Circle(radius);
  return `A circle with radius ${radius} has an area of ${circle.area()}`;
}

In dit voorbeeld wordt `Circle` geëxporteerd als standaard export, terwijl `getCircleInfo` een benoemde export is.

Modules in een project organiseren

Voor grotere projecten met talrijke modules wordt organisatie cruciaal. Overweeg de volgende tips:

  • Mapstructuur: Groepeer gerelateerde modules in mappen zoals `models/`, `services/` en `utils/`.
  • Indexbestanden: Gebruik `index.ts`-bestanden in mappen om modules te aggregeren en opnieuw te exporteren, waardoor import in het hele project eenvoudiger wordt.

Voorbeeld van een directorystructuur:

project/
│
├── src/
│   ├── models/
│   │   ├── index.ts
│   │   └── user.ts
│   └── app.ts

Conclusie

TypeScript-modules zijn een belangrijke functie voor het organiseren en beheren van code. Door modules te maken en te gebruiken, kan code modulair, onderhoudbaar en schaalbaar worden gehouden. Begrijpen hoe u code kunt exporteren en importeren, en hoe u een project kunt structureren, verbetert de effectiviteit van TypeScript-ontwikkeling.