2016-10-17 26 views
9

Aspx sayfaları kullanan eski bir yazılım ile sıkışıp kaldım. Neredeyse küçük bir Tek Sayfa Uygulamaları olarak çalışabilen bazı denetimlerim (ascx) var (örneğin, bir Haber Bülteni'ne kayıt olmanızı sağlayan bir denetim veya kullanıcının haber beslemesini özelleştirmesine izin veren bir denetim). (Biliyorum ... onun gerçekten bir SPA ...)Modül yükleyicisi olmayan şablonlar?

Bu küçük mikro projeler için VUE.js'yi kullanmaya başladım. Her şeyi sade JavaScript ile çalışmayı başardım.

Şimdi JavaScript yerine typescript kullanmak istedim.

Ben sorunu: Ben yazısı metinler oluşturmak ve VUE veya kendi gibi bazı modülleri başvuru yaparken, her zaman oluşturulan js dosyası bazı " gerektirir" komutları (ES5 için transpiled) ya da bazı İthalat yazıyor ES6'ya gönderilirse komutlar.

Okuduğum kadarıyla, bu komutların sunucudaki bazı modül yükleyicileri tarafından kullanılması bekleniyor. Ama bir Node.Js sunucusuna veya bir Javascript bina altyapısına sahip değilim. Bu komutları görmezden gelmek için yazıya dökmenin bir yolu var mı? Daha sonra ihtiyaç duyulan JS ile oluşturulan dosyaları el ile y ascx-control modüllerine referans olarak kullanıyorum.

+0

browserify? .... – YOU

cevap

2

Yapabilirsin. Sadece modül yükleyici ifadeleri olmadan kod çıkışı için tsc'yi yapılandırmanız gerekir. Örneğin, tüm kodu bir büyük dosyaya dönüştürür.

{ 
"compilerOptions": { 
    "target": "es5", 
    "outFile": "www/js/bundle.js", 
    "sourceMap": true, 
    "declaration": true, 
    "removeComments": true, 
    "sourceRoot": "" 
} 

} ES6 ithalat tabloların kullanımını kısıtlayabilir

. Bunun yerine, tanımlanmış ad alanlarını kullanmak zorunda kalabilirsiniz. senin tsconfig.jsonmodule özelliğinde

+0

Teşekkürler. Bunu deneyeceğim – CodeHacker

+0

Bu işe yaramaz, çünkü 'out' (kullanımdan kaldırılmış kullanım' outFile ') herhangi bir komut dizisine uymaz ve Js'de çok fazla hata olabilir. –

5

{ 
    "compilerOptions": { 
     "module": "none", 
    } 
} 

none Şimdi artık amd veya system kodu vardır olmalıdır. Artık artık import ve export ifadelerini kullanamazsınız.

Ve bu olmadan, TypeScript komut dosyalarınızın sırasını bilmez ve Js tanımlanmamış hatalara sahip olabilirsiniz.

sadece ekleyin Bunu düzeltmek için bir tripple slash directive yerine ifadesi import ait

Şimdi typescript doğru sırayla tüm komut dosyalarını derlemek.
Ayrıca, kullanımdan kaldırıldığı için out yerine outFile kullanın.