TSC --module zawsze generuje takie same wyjścia nie ma znaczenia argument

głosy
1

Jestem całkiem nowy, JavaScript, NodeJS i --obviously-- maszynopis. Chciałbym eksperymentować z usług kompilatora w src/services(Windows), aby zapewnić, itp intellisense dla edytora.

O ile mogę powiedzieć, muszę być w stanie requirekodu usług maszynopis w serwerze NodeJS i komunikować się z tym z edytora. Nie mogłem znaleźć żadnego NodeJS specyficznych usług Kod maszynopis, więc myślę, że będę musiał skompilować kod z usługi --module amd, aby były one dostępne dla NodeJS poprzez RequireJS.

Jeżeli powyższe jest prawdziwe, moje próby skompilować kod usługi z --module amdplonu dokładnie takich samych wyników jak przy użyciu tego rodzaju modułu domyślne (patrz niżej).

$ tsc.cmd --module amd --out amd.js .\languageService.ts
$ tsc.cmd --out comm.js .\languageService.ts
$ diff.exe .\amd.js .\comm.js
$
Utwórz 02/10/2012 o 21:40
źródło użytkownik
W innych językach...                            


2 odpowiedzi

głosy
2

Jest to wprawdzie skomplikowane, ale kod w languageService.ts nie jest w module „” w sensie definicji AMD / RequireJS dnia „module”.

Spec odnosi się do miejsc wewnątrz modulebloku jako „moduły wewnętrzne”. To, co widzisz w languageService.ts. Można myśleć o nich więcej jak pojemniki lub singletons które narażają nazwę najwyższego poziomu (patrząc na kod gen za pomocą prostego modułu wewnętrznego wyjaśnia to całkiem sporo). Spożywać te jak zwykłe obiekty najwyższego poziomu bez modułu ładującego w ogóle.

Produkcji zewnętrznych modułów (jak nazwany przez spec) dla requireodbywa się poprzez umieszczenie exportdyrektywę w sprawie deklaracji najwyższego poziomu w .TS pliku (patrz rozdział 9.2.1 niespełniającego). Istnieje kilka próbek (np imageboard) dostępne do pobrania, które to zrobić, jeśli jesteś zainteresowany.

Odpowiedział 02/10/2012 o 22:14
źródło użytkownik

głosy
1

Trzeba mieć swoje moduły zdefiniowane jako export modulenie swoje module, a następnie skompilować go --m amdalbo --module amd.

Zajęło mi to kilka godzin, aby uświadomić sobie :)

Odpowiedział 26/09/2013 o 20:36
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more