Projemizde, modül yükleyicimiz olarak RequireJS kullanıyoruz. Bizim modüllerin bazıları küresel kütüphaneleri etkileyecektir ve dolayısıyla doğrudan onlar başvurulan modülü içinde kullanılmayacakTypeScript: derleme, ilgisiz ithalatları kaldırır
Örnek:.
beklendiği gibi JavaScript benim modülleri yazarken bu işleridefine(['definitely/goingto/usethis/','just/referencingthis/forpackaging'], function(useThis) {
useThis.likeIPromised();
// the following call can only be made when the second required file is available
someGlobalAvailableVariable.someMethod();
});
. Ancak, projemizi adım adım TypeScript'e çeviriyoruz. Yukarıdaki örneği göz önüne alındığında, bu sonuçlanır:
import useThis = module("definitely/goingto/usethis/");
import whatever = module("just/referencingthis/forpackaging");
useThis.likeIPromised();
// I've written a definition file so the following statement will evaluate
someGlobalAvailableVariable.someMethod();
Ve JavaScript bu derleme yaparken, derleyici yardımcı olmak istiyor ve kullanılmayan ithalat kaldırır. Bu şekilde, bu kodumu kırıyor, ikinci içe aktarılan modülün kullanılamamasına neden oluyor. etrafında
Benim mevcut çalışma yedekli atama dahil etmektir, ama bu çirkin görünür:
import whatever = module("just/referencingthis/forpackaging");
var a = whatever; // a is never ever used further down this module
kimse bu derleme sırasında modülleri optimize değil typescript derleyici yapılandırmak mümkün olup olmadığını biliyor mu?
/// <amd-dependency path="just/referencingthis/forpackaging" />
İçe aktarımı yalnızca ilgili modüle taşıyamazsınız varsayıyor muyum? – Fenton
Bunlar uygun modülde. Projem ağırlıklı olarak widget'lardan oluşuyor. Her widget kendi modülünde paketlenmiştir. Şablonlama için Gidon'ları kullanıyorum ve sonuç görüntülerini widget'ım dosyalarımla birlikte paketlemek istiyorum. Böyle bir görüşe başvururken, 'Handlebars' küresel değişkeni üzerinde aynı isme sahip bir metot ortaya çıkaracaktır. Bu nedenle, benim için yöntemi tanımlayacağından, modüle başvurmaya gerek duymuyorum. – thomaux