Ein TypeScript-Programm mit der API erstellen
Initialisieren Sie ein Compilerprogramm und greifen Sie auf den Type Checker zu.
Ein TypeScript-Programm mit der API erstellen 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.
Was ist die Compiler-API?
TypeScript stellt seine Interna des Compilers über das npm-Paket typescript bereit. Sie können Programme erstellen, den Type Checker untersuchen und Quelldateien programmgesteuert analysieren.
import ts from "typescript";
// Use ts.createProgram to startDas Paket typescript installieren
Installieren Sie TypeScript als reguläre Abhängigkeit (nicht nur als devDependency), wenn Sie die Compiler-API in Ihren Tools verwenden.
npm install typescript
# Also install types if needed
npm install --save-dev @types/nodeEin Programm erstellen
ts.createProgram übernimmt ein Array von Pfaden zu Einstiegsdateien und Compileroptionen und gibt ein Program-Objekt zurück.
import ts from "typescript";
const program = ts.createProgram(["src/index.ts"], {
target: ts.ScriptTarget.ES2020,
module: ts.ModuleKind.CommonJS,
strict: true,
});Auf Quelldateien zugreifen
Verwenden Sie program.getSourceFiles(), um alle Dateien der Kompilierung abzurufen, oder getSourceFile für einen bestimmten Pfad.
const sourceFiles = program.getSourceFiles();
sourceFiles.forEach(sf => {
if (!sf.isDeclarationFile) {
console.log(sf.fileName);
}
});Den Type Checker abrufen
Der Type Checker ist das Herzstück der TypeScript-Analyse. Sie erhalten ihn mit program.getTypeChecker().
const checker = program.getTypeChecker();
// Now use checker to resolve types, symbols, etc.Diagnosen auslesen
Rufen Sie Compilerdiagnosen (Fehler und Warnungen) ab, um eigene Validierungstools zu implementieren.
const diagnostics = ts.getPreEmitDiagnostics(program);
diagnostics.forEach(d => {
const msg = ts.flattenDiagnosticMessageText(d.messageText, "
");
console.log(msg);
});tsconfig.json auslesen
Verwenden Sie ts.readConfigFile und ts.parseJsonConfigFileContent, um Compileroptionen aus einer tsconfig-Datei zu laden.
const cfgFile = ts.readConfigFile("tsconfig.json", ts.sys.readFile);
const parsed = ts.parseJsonConfigFileContent(
cfgFile.config,
ts.sys,
process.cwd()
);
const program2 = ts.createProgram(parsed.fileNames, parsed.options);Symbolauflösung
Der Type Checker kann Symbole – Namen, die auf Deklarationen verweisen – auflösen, damit Sie untersuchen können, worauf ein bestimmter Bezeichner verweist.
const sf = program.getSourceFile("src/index.ts")!;
ts.forEachChild(sf, node => {
if (ts.isVariableStatement(node)) {
const symbol = checker.getSymbolAtLocation(
node.declarationList.declarations[0].name
);
console.log(symbol?.getName());
}
});Ausgabe erzeugen
Rufen Sie program.emit() auf, um JavaScript- und Deklarationsdateien zu erzeugen, genau wie beim Ausführen von tsc.
const emitResult = program.emit();
const exitCode = emitResult.emitSkipped ? 1 : 0;
process.exit(exitCode);Inkrementelle Programme
Verwenden Sie ts.createIncrementalProgram, um wiederholte Analysen zu beschleunigen, indem der Zustand vorheriger Builds wiederverwendet wird.
// Incremental compilation tracks which files changed
// to avoid reprocessing unchanged filesZusammenfassung: Grundlagen der Compiler-API
Mit der TypeScript-Compiler-API können Sie Programme erstellen, Quelldateien untersuchen, Typen über den Type Checker abfragen und JavaScript erzeugen – alles aus Node.js-Code heraus.
Kurzer Test
Welche Methode gibt den Type Checker eines Programms zurück?
Das haben Sie gelernt
Die TypeScript-Compiler-API beginnt mit ts.createProgram. Über das Programm können Sie auf Quelldateien, den Type Checker und Diagnosen zugreifen sowie Ausgaben erzeugen – die Grundlage für die Erstellung von Lintern, Codegeneratoren und Analysetools.
Häufig gestellte Fragen
Ist die Lektion „Ein TypeScript-Programm mit der API erstellen“ kostenlos?
Ja — der vollständige Text von „Ein TypeScript-Programm mit der API erstellen“ 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 „Ein TypeScript-Programm mit der API erstellen“?
Initialisieren Sie ein Compilerprogramm und greifen Sie auf den Type Checker zu. 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 „Ein TypeScript-Programm mit der API erstellen“?
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
- Ein TypeScript-Programm mit der API erstellen
- Den AST mit Visitor-Funktionen durchlaufen
- Benutzerdefinierte Transformer und Codegenerierung
- Ein einfaches Linting-Tool erstellen