कई आधुनिक जावास्क्रिप्ट पुस्तकालय मोनोलिथ से मॉड्यूलरकृत एनपीएम पैकेज में अपडेट कर रहे हैं; कुछ उदाहरण lodash और d3 हैं।ईएस 6 आयात में विलय या घोंसला संभव है?
बिल्ड आकार को बनाए रखने के मामले में यह बहुत अच्छा है, लेकिन आयात के साथ थोड़ी अजीबता के लिए बनाता है। जब पूरी लाइब्रेरी लोड हो रहा है, मैं लिखने:
import d3 from 'd3';
let csv = d3.csv()...
let xScale = d3.scale()...
जब पूरे पैकेज के बजाय व्यक्तिगत मॉड्यूल लोड हो रहा है, मैं लिखने:
import d3_scale from 'd3-scale';
import d3_request from 'd3-request';
let csv = d3_request.csv()...
let xScale = d3.scale.scaleLinear()...
वहाँ एक वाक्य रचना है कि मुझे मैं अपने आयात विलय करने के लिए इतना है की अनुमति होगी एक ही ऑब्जेक्ट से प्रत्येक पैकेज से सभी फ़ंक्शन कॉल कर सकते हैं (उदाहरण के लिए d3.csv()
, d3.scaleLinear()
)?
उन सभी को एक ही ऑब्जेक्ट पर प्राप्त करके क्या प्राप्त किया जाएगा? स्वतंत्र चीजों को अलग रखना बिंदु की तरह है। – loganfsmyth
आपको "* लिखना है ... *" क्यों? आप पूरे पैकेज को आयात कर सकते हैं – Amit
@ जैसा कि मैंने अपने प्रश्न में बताया है, मैं सभी 'd3' आयात नहीं करना चाहता क्योंकि यह एक बड़ा पैकेज है और मैं इसके निर्माण का आकार केवल इसके उप-समूह को आयात करके रख सकता हूं। – ericsoco