बेबल 6 का संशोधित डिफ़ॉल्ट निर्यात व्यवहार: सुविधा से सिमेंटिक संगति की ओर बदलाव
एक अभूतपूर्व परिवर्तन में, बैबल 6 ने अपने दृष्टिकोण को संशोधित किया है डिफ़ॉल्ट मानों को निर्यात करना, पिछले कॉमनजेएस-प्रेरित व्यवहार से सख्त ईएस6 सिद्धांतों में बदलाव की शुरुआत करना। इस परिवर्तन ने डेवलपर्स के लिए अवसर और चुनौतियाँ दोनों सामने ला दी हैं। './foo')" सीधे। हालाँकि, बैबल 6 के साथ, इस प्रथा को बंद कर दिया गया है। अब, डिफ़ॉल्ट निर्यात तक पहुँचने के लिए एक स्पष्ट नामकरण परंपरा की आवश्यकता होती है: "require('./foo').default"।
निहितार्थ और समाधानइस परिवर्तन ने बनाया है पिछले व्यवहार पर निर्भर परियोजनाओं में कोड संशोधन की आवश्यकता। जबकि ES6 आयात/निर्यात सिंटैक्स को अपनाना कई मामलों में वांछनीय है, कुछ विरासत कोड के लिए वैकल्पिक समाधान की आवश्यकता हो सकती है। निर्यात" प्लगइन। यह प्लगइन "मॉड्यूल.एक्सपोर्ट्स = एक्सपोर्ट्स['डिफॉल्ट']" लाइन को फिर से डालता है, जो प्री-बैबल 6 एक्सपोर्ट मैकेनिज्म का अनुकरण करता है। मॉड्यूल ऑब्जेक्ट ओवरराइड को रोकने के लिए स्पष्ट रूप से गैर-डिफ़ॉल्ट निर्यात निर्यात करें।
उदाहरण:इनपुट:const foo = { } निर्यात डिफ़ॉल्ट foo
बेबल 5 के साथ आउटपुट:
const foo = {} export default foo
निष्कर्ष
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var foo = {}; exports["default"] = foo; module.exports = exports["default"];
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3