हल: Index.ts' को '–isolatedModules' के अंतर्गत संकलित नहीं किया जा सकता क्योंकि इसे एक वैश्विक स्क्रिप्ट फ़ाइल माना जाता है। इसे एक मॉड्यूल बनाने के लिए एक आयात, निर्यात, या एक खाली 'निर्यात {}' कथन जोड़ें।

आज हम जिस टाइपस्क्रिप्ट मुद्दे पर चर्चा कर रहे हैं वह टाइपस्क्रिप्ट के डिजाइन और कार्यान्वयन में एक प्रमुख पहलू की विशेषता है - मॉड्यूल के साथ इसकी बातचीत। सबसे आम संकलन त्रुटियों में से एक यह है कि `index.ts को -isolatedModules के अंतर्गत संकलित नहीं किया जा सकता है` क्योंकि इसे एक वैश्विक स्क्रिप्ट फ़ाइल माना जाता है। इस समस्या के कारण अक्सर टाइपस्क्रिप्ट समुदाय में व्यापक गलतफहमी पैदा हो गई है कि स्क्रिप्टिंग और मॉड्यूल आयात/निर्यात कैसे किया जाना चाहिए।

समस्या का रहस्योद्घाटन

  • टाइपस्क्रिप्ट की आइसोलेटेड मॉड्यूल्स फ़्लैग सुविधा यह लागू करती है कि प्रत्येक फ़ाइल को एक मॉड्यूल होना चाहिए। इसका मतलब है कि सभी फाइलों में एक आयात या निर्यात विवरण शामिल होना चाहिए। लेकिन जब टाइपस्क्रिप्ट में ऐसी फ़ाइल आती है जिसमें इसका अभाव होता है, तो यह उपर्युक्त त्रुटि उत्पन्न करता है। ऐसा इसलिए होता है क्योंकि टाइपस्क्रिप्ट ऐसी फ़ाइलों को मॉड्यूल के बजाय स्क्रिप्ट के रूप में मानता है।

समाधान ढूंढे

इस हिचकी को दूर करने के लिए, हम कुछ उपाय कर सकते हैं:

  • एक आयात या निर्यात विवरण जोड़ें. इससे टाइपस्क्रिप्ट इसे एक मॉड्यूल के रूप में पहचानता है।
  • वैकल्पिक रूप से, यदि निर्यात या आयात करने के लिए कुछ नहीं है, तो आप 'निर्यात {}' जैसा एक खाली निर्यात विवरण जोड़ सकते हैं।
// Adding an Import Statement
import { ModuleName } from "module-location";
// Adding an Export Statement
export { variableOrFunctionName };
// Adding an Empty Export Statement
export {};  

कोड का चरण दर चरण स्पष्टीकरण

1. आयात विवरण: 'आयात' कीवर्ड का उपयोग करके, हम एक मॉड्यूल को वर्तमान फ़ाइल में आयात कर सकते हैं। उपरोक्त उदाहरण में, हमने इसके मॉड्यूल से 'मॉड्यूलनाम' निकाला।

2. निर्यात विवरण: यह कीवर्ड हमें एक मॉड्यूल से एक फ़ंक्शन, वेरिएबल्स आदि को निर्यात करने की अनुमति देता है। तो, दूसरे मॉड्यूल में, जो कुछ भी निर्यात किया गया था उसे वर्तमान मॉड्यूल में लाने के लिए आप 'आयात' का उपयोग कर सकते हैं।

3. खाली निर्यात विवरण: यह कीवर्ड टाइपस्क्रिप्ट को बताता है कि यह एक मॉड्यूल है, भले ही निर्यात करने के लिए कुछ भी न हो। 'निर्यात {}' जोड़कर, हम एक खाली वस्तु निर्यात कर रहे हैं।

पुस्तकालय, कार्य और अन्य प्रासंगिक विषय

टाइपस्क्रिप्ट मॉड्यूल प्रणाली

मॉड्यूल किसी भी मजबूत एप्लिकेशन के आर्किटेक्चर का अभिन्न अंग हैं। वे अच्छी तरह से संरचित और रखरखाव योग्य कोड प्राप्त करने में महत्वपूर्ण भूमिका निभाते हैं। वे इनकैप्सुलेशन की अवधारणा प्रदान करते हैं, जिसका उपयोग किसी प्रोजेक्ट के लिए कोड की इकाइयों को साफ-सुथरा अलग और व्यवस्थित रखने के लिए किया जाता है।

'पृथक मॉड्यूल' ध्वज की भूमिका

यह ध्वज सुनिश्चित करता है कि प्रत्येक टाइपस्क्रिप्ट फ़ाइल किसी अन्य फ़ाइल पर निर्भर हुए बिना अलगाव में ट्रांसपाइल्ड हो जाती है, जैसा कि बैबेल अपनी संकलन प्रक्रिया में करता है। अनुकूलता की गारंटी के लिए ट्रांसपिलिंग के लिए बैबेल का उपयोग करते समय इस ध्वज की आवश्यकता होती है।

इन टाइपस्क्रिप्ट संकलन मुद्दों को नेविगेट करते समय आयात और निर्यात विवरणों की प्रक्रिया को समझने के साथ-साथ 'पृथक मॉड्यूल' ध्वज का उपयोग बहुत मददगार होता है।

संबंधित पोस्ट:

एक टिप्पणी छोड़ दो