我遇到的问题是我使用了一些外部库,这些库具有几乎相同的名称空间,如:
declare module Test.Internal.Blubb {
interface IAnzeige {
Option: Internal.AnzeigeOptionen.IAnzeigeOptionen;
}
}
declare module Internal.AnzeigeOptionen {
interface IAnzeigeOptionen {
AnzeigeX: number;
AnzeigeY: number;
}
}
并且此代码将无法编译,因为它显示错误:
Test.Internal
没有导出的成员AnzeigeOptionen
行:
Option: Internal.AnzeigeOptionen.IAnzeigeOptionen;
显示此错误。
有没有办法绕过这个问题?
我正在使用TypeScript 1.4和VS 2013 Update 4
答案 0 :(得分:0)
代码的问题在于,当编译器看到行Internal.AnzeigeOptionen
时,由于命名空间冲突,它会尝试将Internal
解析为Test.Internal
。
您可以在Internal
声明之外使用其他名称重新导入Test.Internal
模块。
import m = Internal;
declare module Test.Internal.Blubb {
interface IAnzeige {
Option: m.AnzeigeOptionen.IAnzeigeOptionen;
}
}
declare module Internal.AnzeigeOptionen {
interface IAnzeigeOptionen {
AnzeigeX: number;
AnzeigeY: number;
}
}