"मॉड्यूल" package.json फ़ील्ड किसके लिए है?


111

मैंने कुछ npm पैकेज देखे हैं ( उदाहरण के लिए vue ) pkg.moduleउनके package.json में एक फ़ील्ड है। क्या "module"एक आधिकारिक npm संपत्ति है या यह किसी प्रकार का एक सम्मेलन है? क्या इसके लिए कहीं प्रलेखन है? वह किसके लिए है? बचना पथ? बिना मॉड्यूल वाला पथ?


2
ECMAScript मॉड्यूल के लिए सम्मेलन - यहाँ ESM की पहचान करने के लिए अलग-अलग तरीकों पर एक अच्छा पढ़ा गया है: hackernoon.com/…
hackerrdave

जवाबों:


118

क्या "module"एक आधिकारिक npm संपत्ति है या यह किसी प्रकार का एक सम्मेलन है?

यह एक प्रस्ताव है , लेकिन वास्तव में उपयोग के कारण समर्थित होने की संभावना है।

क्या इसके लिए कहीं प्रलेखन है?

वास्तव में है, और यह यहीं पाया जा सकता है और बाद में यहाँ हटा दिया गया है

वह किसके लिए है?

नोड में ईएस 6 मॉड्यूल इंटरऑपरेबिलिटी। अतिरिक्त चर्चा यहाँ और यहाँ मिल सकती है । और यहाँ रिच हैरिस से एक ब्लॉग पोस्ट के बारे में अधिक बात कर रहे हैं।


1
क्या वेबपैक के पास कहीं इस पर प्रलेखन है, या सिर्फ रोलअप है?
tech4him

1
ऐसा लगता है कि उन्होंने इसे यहाँ जोड़ा है: webpack.js.org/guides/author-lbooks/#final-steps
tech4him

43

यह ESM (ECMAScript मॉड्यूल) का पता लगाने के लिए बंडल टूल द्वारा उपयोग किया जाता है। रोलअप प्रलेखन बहुत अच्छी तरह से यह कहते हैं:

यदि आपकी package.jsonफ़ाइल में कोई moduleफ़ील्ड है, तो ES6- जागरूक उपकरण जैसे रोलअप और वेबपैक 2 ES6 मॉड्यूल संस्करण को सीधे आयात करेगा ।

रोलअप 1.0 पर यह लेख इसे दूसरे तरीके से कहता है:

mainक्षेत्र यकीन है कि नोड उपयोगकर्ताओं का उपयोग कर कि बनाता है requireUMD संस्करण दिया जाएगा। moduleक्षेत्र एक अधिकारी NPM सुविधा नहीं है लेकिन bundlers के बीच एक आम सम्मेलन हमारे पुस्तकालय का एक ईएसएम संस्करण आयात करने का तरीका नामित करने के लिए।

की आगे की चर्चा pkg.moduleपर है रोलअप Github विकी और webpack डॉक्स


1
mainपुस्तकालय के UMD संस्करण का एक छोटा संस्करण होना चाहिए ? या यह एक निर्विवाद होना चाहिए? किस बारे में module? मुझे लगता है कि मॉड्यूल को छोटा नहीं किया जाना चाहिए क्योंकि उपयोगकर्ता अपने बंडल (वेबपैक, पार्सल, आदि ...) का उपयोग करेगा और ईएस 6 मॉड्यूल निर्यात के साथ स्रोत फ़ाइल का उपयोग करके बंडल ट्री-शेकिंग का लाभ उठा सकता है, सही है?
tonix
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.