2016-10-15 86 views
0

我有两个模块打字稿导入模块:说出口其他模块

ModuleA 和 ModuleB

而且我有两类: ClassA的 和 ClassB的

我有我的班等被定义例如:

export class ClassA 
{ 
} 

export class ClassB 
{ 
} 

I有我的模块中定义的一样,例如:

export * from './ClassA'; 
export module ModuleA{}; 

export * from './ClassB'; 
export module ModuleB{}; 

我也有一个包含模块,称为ParentModule:现在

export * from './ModuleB'; 
export * from './ModuleA'; 

export module ParentModule{} 

,在我打字稿文件,称为Test.ts一个,我有:

import { ClassA } from './ParentModule'; 

class Test extends ClassA 
{ 

} 

由于某种原因,它能够在我的IDE中找到引用,但是在运行时会引发未定义的错误。有谁知道如何解决这一问题?

+0

我相信我将不得不先导入子模块中的所有类型,然后导出* = \ – Magn3s1um

+0

没有骰子。我将所有类型导入模块,然后导出*,但仍然无法工作。也许它与导出*语法在TS2中不起作用有关 – Magn3s1um

回答

0

所以它看起来像它与递归导入的模块。

如果A是ParentModule的一部分,并从该ParentModule除了它本身之外导入某些内容,它将无法正常工作。