Problem: Pracuję nad plikiem, który ma wiele typów warunkowych, które wywodzą swoje typy z wcześniej zdefiniowanych typów warunkowych, a to stało się bardzo skomplikowane i trudne do debugowania w jaki sposób jest uzyskiwany typ.
Próbuję znaleźć sposób na „debugowanie” lub wyszczególnienie, w jaki sposób kompilator TypeScript ustala typ warunkowy i wybrał ścieżkę do uzyskania ostatecznego typu.
Przejrzałem opcje kompilatora i nie znalazłem jeszcze niczego w tym obszarze ...
Analogią do tego, czego teraz szukam, jest odpowiednik DEBUG=express:*
rodzaju ustawienia, którego można użyć, jeśli chcesz zobaczyć, co robi serwer ekspresowy.
Jednak faktycznym problemem, który próbuję rozwiązać, jest możliwość zdekonstruowania i debugowania sposobu, w jaki typ jest uzyskiwany w dużej złożonej definicji typu hierarchicznego.
Ważna uwaga: Nie próbuję debugować wykonania środowiska wykonawczego projektu TypeScript. Próbuję debugować sposób obliczania typów przez kompilator TypeScript.
interface
z samokontrującą nazwą kontenera zamiast ogólnego, type
który próbuje rozszerzyć jego definicja w podpowiedzi IDE) lub po prostu przeredaguj źródło, aby całkowicie uniknąć nadużywania złożonych typów warunkowych.