2015-09-20 14 views
5

मेरे पास स्वत: जेनरेट किए गए मॉड्यूल का एक समूह है जिसे मुझे अपनी टाइपस्क्रिप्ट फ़ाइलों से संदर्भित करने की आवश्यकता है।मॉड्यूल घोषणा के बिना टाइपस्क्रिप्ट में कैसे आयात करें

जैसे

 
import test = require('../templates/test') 

मैं ES5 उत्पादन के साथ CommonJS मॉड्यूल पैदा कर रहा हूँ। तो मैं amd-dependency का उपयोग नहीं कर सकता (क्योंकि यह केवल एमडी मॉड्यूल के लिए काम करता है)। और मैं मैन्युअल रूप से मॉड्यूल को 1 से तब तक घोषित नहीं कर सकता हूं। यह स्वत: उत्पन्न होता है और 2. इसका एक सापेक्ष पथ होता है।

टाइपस्क्रिप्ट 1.6 वर्तमान में यह एक त्रुटि दिखाता है कि यह 'मॉड्यूल नहीं ढूंढ सकता'। मैं इसे इस त्रुटि को दबाने और आयात करने के लिए कैसे करूं?

+0

एक पथ का मुद्दा की तरह लगता है । यदि नहीं, तो क्या आप ऑटो जेनरेट किए गए मॉड्यूल से संक्षिप्त उदाहरण प्रदान कर सकते हैं और उन पथों का उल्लेख कर सकते हैं जो उन्हें सहेजने वाली फ़ाइल से प्रासंगिक हैं? – AlexStack

+0

यह एक पथ मुद्दा नहीं है। जैसा कि मैंने वर्णन किया है, मुद्दा यह है कि उपरोक्त मॉड्यूल के लिए 'टाइपस्क्रिप्ट' मॉड्यूल घोषित नहीं किया गया है, जो स्पष्ट है क्योंकि यह स्वतः उत्पन्न हुआ था। सवाल पूछता है कि टाइपस्क्रिप्ट परिभाषा के बिना मॉड्यूल के लिए टाइपस्क्रिप्ट त्रुटियों को दबाने के लिए कैसे। – pdeva

उत्तर

7

मैं कैसे कर यह इस त्रुटि को दबाने और आयात

आप यह सुनिश्चित करें कि require बयान वैध है कर रहे हैं और किसी भी प्रकार आयात पर जाँच बंद करना चाहते हैं बनाने के लिए, आप कर सकते हैं बस node.d.ts का उपयोग करें और करें:

var test = require('../templates/test') 

यानी। import के बजाय बस var का उपयोग करें।

+1

आपकी दिशा में कोड प्यार भेजना। मैं काफी समय से इसके साथ संघर्ष कर रहा था – Hunkpapa

0

आप टाइपप्रति आयात (जो सिर्फ ES6 आयात कर रहे हैं) का उपयोग करना चाहते, तो आप इस इस्तेमाल कर सकते हैं:

import * as test from '../templates/test'; 

और उसके बाद इस तरह अपने एपीआई फोन:

let foo = test.MY_API; 
संबंधित मुद्दे