Bazı npm paketlerinin ( örneğin vue ) pkg.module
package.json'da bir alanı olduğunu gördüm . Mı "module"
resmi npm mülkiyet veya bu tür bir kuralıdır? Bunun için bir yerde belge var mı? Bu ne için? esnext yolu? Gruplanmamış modül yolu?
Bazı npm paketlerinin ( örneğin vue ) pkg.module
package.json'da bir alanı olduğunu gördüm . Mı "module"
resmi npm mülkiyet veya bu tür bir kuralıdır? Bunun için bir yerde belge var mı? Bu ne için? esnext yolu? Gruplanmamış modül yolu?
Yanıtlar:
Mı
"module"
resmi npm mülkiyet veya bu tür bir kuralıdır?
Bu bir teklif , ancak fiili kullanım nedeniyle büyük olasılıkla desteklenecek.
Bunun için bir yerde belge var mı?
Aslında var ve tam burada bulunabilir ve daha sonra buradan kaldırılabilir .
Bu ne için?
Düğümde ES6 Modülünün Birlikte Çalışabilirliği. Ek tartışma burada ve burada bulunabilir . Ve işte Rich Harris'ten bunun hakkında daha fazla konuşan bir blog yazısı .
Bu, paket araçları tarafından ESM (ECMAScript Modülü) algılaması için kullanılır. Toplaması dokümantasyon oldukça iyi diyor:
Senin Eğer
package.json
dosya ayrıca sahipmodule
alanını gibi ES6 uyumlu araçları Toplaması ve WebPack 2 edecek ES6 modülü sürümü içe doğrudan.
Toplama 1.0 hakkındaki bu makale bunu başka bir şekilde anlatıyor:
main
Alan Düğüm kullanıcıları kullanarak emin olurrequire
UMD versiyonu sunulacaktır.module
Alan resmi bir npm özellik değil ama bundlers arasında yaygın bir kongre bizim kütüphanenin bir ESM sürümünü içe nasıl tayin etmek.
Daha fazla tartışma pkg.module
, Rollup Github Wiki ve web paketi Dokümanları üzerindedir .
main
Kütüphanenin UMD versiyonunun küçültülmüş bir versiyonu olmalı mı ? Yoksa küçültülmemiş mi olmalı? Peki ya module
? Sanırım bu modül küçültülmemeli çünkü kullanıcı paketleyicisini (Webpack, Parcel, vb.) Kullanacak ve kaynak dosyayı ES6 modülüyle dışa aktararak paketleyici ağaç sallamayı kaldırabilir, doğru mu?