Spędziłem trochę czasu na czytanie specyfikacji języka Typescript i jestem nieco mylić o różnicę między wewnętrznymi i zewnętrznymi modułami. Oto opis pobierany bezpośrednio od specyfikacji:
moduły wewnętrzne (sekcja 9.2.2) są lokalne lub wywożone członkowie innych modułów (w tym module globalnej i modułów zewnętrznych). moduły wewnętrzne są zadeklarowane używając ModuleDeclarations które określają ich nazwy i ciało. Ścieżka nazwa z więcej niż jednego identyfikatora odpowiada serii zagnieżdżonych zgłoszeń moduł wewnętrznego.
moduły zewnętrzne (sekcja 9.4) są oddzielnie ładowane ciał Kod opisany za pomocą zewnętrznych nazw modułu. Moduł zewnętrzny jest zapisywany jako osobny plik źródłowy, który zawiera co najmniej jedną deklarację importu lub eksportu. Ponadto moduły zewnętrzne mogą zostać uznane za pomocą AmbientModuleDeclarations w globalnej modułu, który bezpośrednio określenia zewnętrznych nazw modułu jako napisowych. Jest to opisane w punkcie 0.
Z tego, co mam rozumieć myślę, że moduły zewnętrzne odpowiadają maszynopis plików bez załączając definicji modułu, który po prostu wyeksportować zestaw typów i / lub zmiennych. Z innego pliku maszynopis mogę prosty import moduł zewnętrzny w foo.ts zimport foo = module(foo);
Czy ktoś może wyjaśnić mi destinction pomiędzy modułami zewnętrznymi i wewnętrznymi?













