ts-node-dev für TypeScript: Komplettanleitung mit Beispielen

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

ts-node-dev für TypeScript: Komplettanleitung mit Beispielen

Willkommen bei PythonLib! In diesem Artikel tauchen wir tief in die Bibliothek ts-node-dev ein – ein unverzichtbares Werkzeug für die moderne TypeScript-Entwicklung. Wenn Sie in TypeScript programmieren und es leid sind, Ihren Code nach jeder Änderung manuell neu zu kompilieren, dann ist dieser Artikel genau das Richtige für Sie.

1. Was ist ts-node-dev und warum brauchen Sie es?

ts-node-dev ist ein Dienstprogramm für TypeScript, das Hot Reload für Ihre Anwendung ermöglicht. Es startet den Node.js-Prozess automatisch neu, sobald Sie Ihre TypeScript-Quelldateien ändern. Das beschleunigt die Entwicklung enorm, da Sie den Server oder das Skript nicht mehr manuell stoppen und starten müssen.

Warum ist das wichtig? Während der Entwicklung nehmen Sie ständig Änderungen am Code vor. Ohne automatisches Neuladen müssen Sie jedes Mal:

  • Den aktuellen Prozess beenden (Strg+C)
  • Ihn neu starten (npm start oder ts-node)
  • Auf die Kompilierung und den Start warten

ts-node-dev löst dieses Problem. Es überwacht Ihre Projektdateien auf Änderungen und startet die Anwendung sofort neu. Im Gegensatz zu nodemon (das mit JavaScript arbeitet) versteht ts-node-dev TypeScript und verwendet ts-node im Hintergrund für die "Just-in-Time"-Kompilierung. Das macht es zur idealen Wahl für die Entwicklung von Servern, CLI-Tools und allen Node.js-Anwendungen in TypeScript.

2. Installation

Die Installation von ts-node-dev erfolgt über npm (Node Package Manager). Es wird empfohlen, es als Dev-Abhängigkeit zu installieren, da es nur während der Entwicklung benötigt wird.

# Globale Installation (nicht empfohlen)
npm install -g ts-node-dev

# Installation als Dev-Abhängigkeit im Projekt (empfohlen)
npm install --save-dev ts-node-dev

# Oder mit yarn
yarn add --dev ts-node-dev

# Oder mit pnpm
pnpm add -D ts-node-dev

Überprüfen Sie nach der Installation, ob alles funktioniert:

npx ts-node-dev --version

Wenn Sie eine Versionsnummer sehen (z. B. 2.0.0), war die Installation erfolgreich.

3. Schnellstart – ein minimales Arbeitsbeispiel

Erstellen wir eine einfache TypeScript-Anwendung und starten sie mit ts-node-dev.

Schritt 1: Projekt initialisieren

mkdir my-ts-app
cd my-ts-app
npm init -y
npm install --save-dev typescript ts-node-dev @types/node
npx tsc --init

Schritt 2: Datei src/index.ts erstellen

// src/index.ts
const greet = (name: string): string => {
    return `Hallo, ${name}!`;
};

console.log(greet('PythonLib'));
console.log('Server läuft...');

// Exportieren für das Beispiel
export { greet };

Schritt 3: Mit ts-node-dev starten

npx ts-node-dev --respawn src/index.ts

Sie sollten Folgendes sehen:

[INFO] 15:30:00 ts-node-dev ver. 2.0.0 (using ts-node ver. 10.9.1, typescript ver. 5.3.3)
Hallo, PythonLib!
Server läuft...

Ändern Sie nun den Begrüßungstext in src/index.ts und speichern Sie die Datei. Sie werden sehen, dass der Prozess automatisch neu startet und das neue Ergebnis ausgibt.

4. Wichtige Optionen (Methoden) im Detail

ts-node-dev ist ein CLI-Tool und keine Bibliothek mit einer API. Es bietet jedoch viele Optionen (Flags), die als "Methoden" zur Konfiguration betrachtet werden können. Hier sind 8 wichtige Optionen.

4.1 --respawn

Syntax: ts-node-dev --respawn [Datei]

Funktion: Startet den Prozess automatisch neu, wenn sich Dateien im Projekt ändern. Dies ist die Hauptoption für Hot Reload.

Beispiel:

npx ts-node-dev --respawn src/index.ts

Empfehlungen