2013-08-11 20 views
23

Jak jawnie zadeklarować zmienną w globalnej przestrzeni nazw z maszynopisu?zadeklaruj globalną zmienną przestrzeni nazw z TypeScript

muszę kompilator wygeneruje następujący kod javascript:

MyExtension = someFunction() 

niestety, mogę mieć tylko generować

var MyExtension = someFunction() 

To przychodzi do kwestii z najnowszej wersji (jeszcze w rc) pakietów meteorytów. Meteor wprowadził sposób na zakresy nazw w pakietach - chodzi o to, że zmienna musi być zdefiniowana w globalnej przestrzeni nazw (którą meteoryt przekierowuje do własnego obiektu Package).

Istnieje film o tym pod adresem https://www.eventedmind.com/posts/meteor-linker-package-namespacing.

Czy istnieje jakieś słowo kluczowe dostępne lub w planach?

Odpowiedz

68

Użyj słowa kluczowego declare. Są one znane jako deklaracje otoczenia.

declare var MyExtentention:any; 
+1

+1 punkt na odpowiedź. – Fenton

+4

Z mojego doświadczenia wynika, że ​​musi to być początek pliku. Jeśli umieścimy to w innej deklaracji zmiennej, np. W pobliżu miejsca, w którym używana jest zmienna globalna, kompilator będzie narzekał, że "Modyfikatory nie mogą tutaj się pojawić". – Josh

Powiązane problemy