2015-03-25 16 views
7

में मैं बस टाइपस्क्रिप्ट से शुरुआत कर रहा हूं और इसे मौजूदा एंगुलरजेएस प्रोजेक्ट में जोड़ने की कोशिश कर रहा हूं।मुझे त्रुटि क्यों मिल रही है: (45, 1) टीएस 2304: नाम 'कोणीय' नहीं मिल रहा है। वेबस्टॉर्म

मैंने बॉवर निर्देशिका को 'बहिष्कृत' किया है जहां कोणीय स्थापित किया गया है और प्राथमिकता विंडो में कोणीय के लिए निश्चित रूप से टाइप की गई परिभाषाओं को डाउनलोड किया गया है।

कोणीय कोड पूर्णता काम कर रही है, लेकिन टाइपस्क्रिप्ट मुझे एक त्रुटि टीएस 2304 दे रहा है जहां भी मैं 'कोणीय' कोड करता हूं।

मुझे क्या याद आया?

उत्तर

12

त्रुटि को ठीक करने के लिए, आप डाउनलोड की definitelyTyped टाइपप्रति स्टब्स कॉपी करने की जरूरत है अपनी परियोजना निर्देशिका के लिए ~/Library/Caches/WebStorm9/extLibs फ़ोल्डर से और उन्हें /// <reference path> टिप्पणियों का उपयोग कर अपने .ts फ़ाइल में संदर्भ, जैसे

/// <reference path="path/to/angular.d.ts" /> 

बातें स्पष्ट बस बनाने के लिए: आप डाउनलोड करते हैं टाइपप्रति स्टब्स v ia प्राथमिकताएं/भाषा & फ्रेमवर्क/जावास्क्रिप्ट/पुस्तकालय, उन्हें ~/Library/Caches/WebStorm9/extLibs में रखा गया है। वेबस्टॉर्म के लिए यह बिल्कुल ठीक है - इसे सीधे प्रोजेक्ट फ़ोल्डर में लाइब्रेरी फ़ाइलों को रखने की आवश्यकता नहीं है। इसके अलावा, वेबस्टॉर्म को ///reference टिप्पणियों को हल करने में सक्षम होने की आवश्यकता नहीं है - प्रकारों को संकेत देने के लिए संकेत/नेविगेशन/समापन कार्य टाइप करें, भले ही प्रकार स्पष्ट रूप से संदर्भित न हों। लेकिन टीएससी कंपाइलर को परियोजना निर्देशिका में कहीं भी डालने वाली डी.टी. फाइलों की आवश्यकता होती है और ///reference टिप्पणी के माध्यम से संदर्भित किया जाता है। तो, टाइपस्क्रिप्ट कंपाइलर को उपलब्ध स्टब्स उपलब्ध कराने के लिए, आपको उन्हें प्रोजेक्ट निर्देशिका (और शायद अधिक मानव पठनीय नामों के नाम पर पुनर्नामित करने की आवश्यकता है) को कॉपी/स्थानांतरित करने की आवश्यकता है) और टिप्पणियां जोड़ें ('Generate reference path comment 'इरादे का उपयोग करके किया जा सकता है (Alt + टिप्पणी उत्पन्न करने के संदर्भ में दर्ज करें))। हम भविष्य के संस्करणों

+1

वेबस्टॉर्म सिस्टम से फ़ाइलों की प्रतिलिपि बनाने की बजाय lib मैंने tsd का उपयोग करके टाइप परिभाषाओं की एक अलग प्रति स्थापित की है। वेबस्टॉर्म ने सीधे ऐसा किया है, तो यह निश्चित रूप से कुछ काम बचाएगा। – kpg

+0

क्या यह कोणीय 2 के लिए भी 'सत्य' है? –

+0

अधिक या कम। आपकी समस्या क्या है - 'टीएस 2307: मॉड्यूल' कोणीय 2/कोर 'नहीं मिला? कंपाइलर आपके मॉड्यूल द्वारा आयात की गई d.ts फ़ाइलों को नहीं ढूंढ सकता है। यदि आपके पास d.ts फ़ाइलों को इंगित करने के लिए /// <संदर्भ पथ टिप्पणियां नहीं हैं, और उन्हें जोड़ने की इच्छा नहीं है, तो tsconfig.json का उपयोग करके आपकी पसंद है: यदि संदर्भित फाइलें इसमें शामिल हैं, और tsconfig संकलन के लिए उपयोग किया जाता है ('Tsconfig.json' का प्रयोग सेटिंग्स/भाषाएं और फ्रेमवर्क/टाइपस्क्रिप्ट में सक्षम है), संकलक संदर्भ के दौरान कॉन्फ़िगरर फ़ाइल कॉन्फ़िगरेशन फ़ाइल का उपयोग करेगा, और स्पष्ट रूप से संदर्भित डी.टी. फ़ाइलों की आवश्यकता नहीं होगी। – lena

2

शायद समस्या हो रही विशेष .ts फ़ाइल में .d.ts के लिए एक संदर्भ जोड़ने की जरूरत है, कुछ की तरह:

/// <reference path="../typings/angular.d.ts"/> 
1

downloaded the definitelyTyped definitions for angular in the preferences window.

ऐसा स्टब्स को डाउनलोड करने के इरादे के लिए IntelliSense प्रदान करना है में प्रोजेक्ट फ़ोल्डर (बजाय सिस्टम/extLibs के /) के लिए सीधे फ़ाइलों को डाउनलोड करने के लिए JavaScript एक विकल्प प्रदान करने के लिए योजना बना रहे हैं कोड टाइपस्क्रिप्ट कोड। टाइपस्क्रिप्ट कोड के लिए आपको सीधे अपने टाइपस्क्रिप्ट कोड में .d.ts डाउनलोड और संदर्भित करना चाहिए।

संबंधित मुद्दे