Problem: Ich arbeite an einer Datei mit vielen bedingten Typen, die ihre Typen von zuvor definierten bedingten Typen ableiten. Dies ist sehr komplex und schwierig zu debuggen, wie ein Typ abgeleitet wird.
Ich versuche einen Weg zu finden, um zu "debuggen" oder aufzulisten, wie der TypeScript-Compiler seine Bestimmung für einen bedingten Typ vornimmt und einen Pfad auswählt, um den endgültigen Typ abzuleiten.
Ich habe die Compiler-Optionen durchgesehen und noch nichts in diesem Bereich gefunden ...
Eine Analogie zu dem, wonach ich gerade suche, entspricht der DEBUG=express:*
Art der Einstellung, die man verwenden könnte, wenn man sehen möchte, was ein Express-Server tut.
Das eigentliche Problem, das ich zu lösen versuche, besteht jedoch darin, dekonstruieren und debuggen zu können, wie ein Typ in einer großen komplexen hierarchischen Typdefinition abgeleitet wird.
Wichtiger Hinweis: Ich versuche nicht, die Laufzeitausführung des TypeScript-Projekts zu debuggen. Ich versuche zu debuggen, wie die Typen vom TypeScript-Compiler berechnet werden.
interface
mit einem selbstdokumentierenden Containernamen anstelle eines Generikums type
, das versucht, es zu erweitern Definition im Tooltip der IDE) oder einfach das Refactoring der Quelle, um eine übermäßige Verwendung komplexer bedingter Typen vollständig zu vermeiden.