2016-03-29 8 views
19

मैं कुछ फाइलों से सभी प्रकार कैसे आयात कर सकता हूं?टाइपस्क्रिप्ट/जावास्क्रिप्ट - सभी प्रकारों को आयात करें

मान लें कि मेरे पास myClass.ts और otherClass.ts है। मैं otherClass.ts से सभी कक्षाएं आयात करना चाहता हूं।

मैंने आयात के लिए कुछ वाक्यविन्यास देखे हैं।

import ClassA, { ClassB, ClassC } from 'otherClass'; 

import * as foo from 'otherClass'; 

import foo = require('otherClass'); 

import 'rxjs/Rx'; 
  1. पहले सब कुछ सूचीबद्ध करने के लिए मुझे जरूरत है। मैं सभी प्रकार के आयात करना चाहता हूं।

  2. दूसरे वाक्यविन्यास को नामस्थान उपसर्ग की आवश्यकता है: foo.ClassA

  3. मैं समझता हूं कि आखिरी वाला टाइपस्क्रिप्ट 1.4 है, लेकिन अभी भी समर्थित है।

क्या निम्न में कुछ ऐसा है?

import * from "otherClass"; 
... 
    var x = new ClassA() 

इसके अलावा, क्या { ... } और प्रकार के कुछ बाहर जा रहा है और कुछ अंदर का अर्थ क्या है?

documentation ऐसा कुछ भी संकेत नहीं देता है।

import * as foo from './otherClass'; 

आप import documentation में आयात का उपलब्ध प्रकार देख सकते हैं:

उत्तर

20

ES6 मॉड्यूल के साथ, निकटतम बात आप आप क्या चाहते हैं के लिए है एक namespace आयात है।

इसके अलावा, {...} और कुछ प्रकार के बाहर क्या है और कुछ अंदर क्या है?

आप उस संदर्भ में पढ़ सकते हैं जिसे मैंने संदर्भित किया है या my answer here में।

+0

लेकिन यह प्रकार या इंटरफेस के लिए काम नहीं करता है, है ना? मैं उनको संभालने के बराबर तरीके से बहुत दिलचस्पी लेता हूं। – DanielM

+0

@DanielM हाँ यह करता है। आपको बस यह सुनिश्चित करने की आवश्यकता है कि आयात किए जा रहे फ़ाइल से प्रकार और इंटरफेस निर्यात किए जाएं। –

+0

परीक्षणों में मैंने यह काम नहीं किया था - संकलक शिकायत करता है अगर मैं 'foo.SomeExportedType' करता हूं। – DanielM

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