"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > बैबल 6 के संशोधित डिफ़ॉल्ट निर्यात व्यवहार के लिए निहितार्थ और समाधान क्या हैं?

बैबल 6 के संशोधित डिफ़ॉल्ट निर्यात व्यवहार के लिए निहितार्थ और समाधान क्या हैं?

2024-11-03 को प्रकाशित
ब्राउज़ करें:489

What are the Implications and Workarounds for Babel 6\'s Modified Default Export Behavior?

बेबल 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"];
विज्ञप्ति वक्तव्य यह आलेख यहां पुनर्मुद्रित है: 1729645036 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3