Es gibt zahlreiche StackOverflow-Fragen, die dieses Thema berühren, aber beide sind nicht ganz die gleichen wie das, was ich versuche oder für frühere Versionen von TypeScript.
Ich arbeite an einem ziemlich großen TypeScript-Projekt und habe ein gegebenes Modul über mehrere Dateien verteilt, nicht eine pro Klasse.
In 0.8.0 funktionierte das gut:
%Vor%.
%Vor%.
%Vor%In Version 0.8.1 musste ich a.ts mit dem Export-Import Trick ändern:
%Vor%In der Version 0.8.2 können Importe jedoch nicht mehr in der Moduldeklaration enthalten sein. Daher wurde a.ts folgendermaßen geändert:
%Vor%was jetzt einen Fehler ergibt, weil a.ts die Erweiterung des Moduls in b.ts nicht sieht.
Was ich verstehe:
- a.ts wurde aufgrund der Import-Anweisung zu einem externen Modul.
- Durch das Entfernen des Imports in a.ts können a und b und mein Modul zusammengeführt werden.
- Durch das Ändern des Imports in eine require-Anweisung werden die Typdefinitionen in express.d.ts verloren
Was ich nicht verstehe:
- Gibt es wirklich keine Möglichkeit für mich, das zu umgehen, ohne all meine Moduldateien zusammenzuführen?
Ich entschuldige mich, wenn das anderswo beantwortet wird - verlinke mich einfach dort - aber keines der anderen ähnlichen Probleme scheint das definitiv zu beantworten.
Das mache ich aus Ihrer Situation.
Ihre Module ...
Sie müssen Ihre Datei nach Ihrem Modul benennen, also sollte a.ts
eigentlich m.ts
heißen und sollte etwas wie ...
Sie sollten hier keine reference
-Anweisungen verwenden.
Wenn Sie Code auf nodejs ausführen, können Sie Ihren Code nicht wirklich auf mehrere Dateien aufteilen, da die Datei selbst Ihr Modul ist - wenn Sie import m = module('m');
nach m.js
suchen. Was Sie können tun, ist, Ihre Dateien in einer Ordnerstruktur zu organisieren.
Tags und Links typescript