2013-08-11 6 views
23

Wie deklariert man explizit eine Variable im globalen Namespace von Typoskript?Deklarieren globaler Namespacevariable von TypeScript

Ich brauche den Compiler den folgenden JavaScript-Code zu generieren:

MyExtension = someFunction() 

leider kann ich es nur mit der neuesten Version (noch in rc

var MyExtension = someFunction() 

Dies kommt zu einem Problem haben generiert) von Meteorpaketen. Meteor hat eine Möglichkeit eingeführt, Namespaces in Paketen zu definieren - das Problem ist, dass die Variable im globalen Namespace definiert werden muss (welcher Meteor verweist auf ein eigenes Package-Objekt).

Es gibt ein Video darüber bei https://www.eventedmind.com/posts/meteor-linker-package-namespacing.

Gibt es eine Art von global Stichwort verfügbar oder in den Plänen?

Antwort

68

Verwenden Sie das Schlüsselwort declare. Diese werden als Ambient-Deklarationen bezeichnet.

declare var MyExtentention:any; 
+1

+1 Stelle auf Antwort. – Fenton

+4

Nach meiner Erfahrung muss dies an der Spitze der Datei gehen. Wenn Sie dies innerhalb einer anderen Variablendeklaration platzieren, z. B. in der Nähe der Stelle, an der Sie die globale Variable verwenden, beschwert sich der Compiler darüber, dass "Modifikatoren hier nicht angezeigt werden können". – Josh

Verwandte Themen