Die Migration beginnen: allowJs und checkJs
Aktivieren Sie die TypeScript-Prüfung in einem JavaScript-Projekt.
Die Migration beginnen: allowJs und checkJs ist eine kostenlose TypeScript Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des TypeScript Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der TypeScript Academy-Kurs umfasst insgesamt 4 Lektionen.
Die Herausforderung der Migration
Eine große JavaScript-Codebasis auf einmal zu TypeScript zu migrieren, ist riskant. Der schrittweise Weg: TypeScript nach und nach aktivieren, Datei für Datei, und dabei die Funktionsfähigkeit des Projekts erhalten.
# Key compiler flags for gradual migration:
# allowJs — allow .js files in the compilation
# checkJs — type-check .js files with JSDoc typesSchritt 1: TypeScript installieren
Fügen Sie TypeScript zum Projekt hinzu und erstellen Sie zunächst eine minimale tsconfig ohne den Strict-Modus.
npm install --save-dev typescript
npx tsc --init
# Edit tsconfig.json to set allowJs: trueallowJs: true
Mit allowJs: true bezieht TypeScript .js-Dateien in die Kompilierung ein. Die Typprüfung ist großzügig – der meiste JavaScript-Code wird ohne Fehler kompiliert.
{
"compilerOptions": {
"allowJs": true,
"outDir": "./dist",
"target": "ES2020"
},
"include": ["src"]
}checkJs: true
checkJs: true aktiviert die Typprüfung für JavaScript-Dateien anhand inferierter Typen und JSDoc-Annotationen. Dadurch werden offensichtliche Fehler erkannt, ohne dass eine Konvertierung zu .ts erforderlich ist.
{
"compilerOptions": {
"allowJs": true,
"checkJs": true
}
}Fehler mit @ts-nocheck unterdrücken
Fügen Sie // @ts-nocheck am Anfang problematischer JS-Dateien ein, um während der schrittweisen Migration alle TypeScript-Fehler zu unterdrücken.
// @ts-nocheck
// This file is not yet migrated — errors suppressed
function legacyUtil(x) { return x.foo.bar; }Fehler zeilenweise unterdrücken
Verwenden Sie // @ts-ignore, um den Fehler in einer einzelnen Zeile zu unterdrücken, ohne die gesamte Datei zu deaktivieren.
const result = legacyFn(value); // @ts-ignore
// Only this line's error is suppressedmaxNodeModuleJsDepth
Standardmäßig prüft TypeScript nur JS-Dateien in Ihrem Projekt. Legen Sie maxNodeModuleJsDepth fest, um zu steuern, wie tief JS-Dateien in node_modules geprüft werden.
{
"compilerOptions": {
"maxNodeModuleJsDepth": 1 // Check 1 level deep in node_modules
}
}JS nach Dist kompilieren
Mit allowJs kann der TypeScript-Compiler auch JS-Dateien transpilieren – nützlich, um Polyfills anzuwenden und einheitlich ältere Umgebungen zu unterstützen.
tsc
# Compiles both .ts and .js files to dist/Fortschritt messen
Verfolgen Sie den Migrationsfortschritt, indem Sie .js- und .ts-Dateien zählen. Legen Sie ein Ziel für den pro Sprint konvertierten Prozentsatz fest.
find src -name "*.ts" | wc -l # TypeScript files
find src -name "*.js" | wc -l # JavaScript files remainingTypregressionen vermeiden
Belassen Sie noImplicitAny: false zunächst deaktiviert, damit bestehende JS-Dateien nicht mit Fehlern überflutet werden. Aktivieren Sie die Option, nachdem Sie die jeweilige Datei zu TypeScript konvertiert haben.
{
"compilerOptions": {
"allowJs": true,
"noImplicitAny": false // Relax for JS files; enable per .ts file
}
}Zusammenfassung: Migration starten
Starten Sie die Migration mit allowJs: true und checkJs: true, verwenden Sie @ts-nocheck für noch nicht vorbereitete Dateien und verfolgen Sie den Fortschritt anhand der Dateianzahl. So bleibt das Projekt kompilierbar, während Sie die Dateien schrittweise konvertieren.
Schnelltest
Was bewirkt checkJs: true, ohne dass eine Konvertierung von .js zu .ts erforderlich ist?
Das haben Sie gelernt
Starten Sie die JS→TS-Migration mit allowJs: true und optional checkJs: true. Verwenden Sie @ts-nocheck, um noch nicht vorbereitete Dateien stummzuschalten, und konvertieren Sie die Dateien schrittweise, während Sie den Fortschritt anhand der Dateianzahl verfolgen.
Häufig gestellte Fragen
Ist die Lektion „Die Migration beginnen: allowJs und checkJs“ kostenlos?
Ja — der vollständige Text von „Die Migration beginnen: allowJs und checkJs“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des TypeScript Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der TypeScript Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Die Migration beginnen: allowJs und checkJs“?
Aktivieren Sie die TypeScript-Prüfung in einem JavaScript-Projekt. Du übst TypeScript Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um TypeScript Academy zu starten?
Keine Vorkenntnisse erforderlich. TypeScript Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „Die Migration beginnen: allowJs und checkJs“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser TypeScript Academy-Lektion Code schreiben und ausführen?
Ja. Jede TypeScript Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Die Migration beginnen: allowJs und checkJs
- JSDoc-Typannotationen als Brücke
- Strategie für die Konvertierung Datei für Datei
- Umgang mit nicht typisierten Drittanbieterbibliotheken