解析右命名空间失败



我有一个问题,我正在使用一些外部库几乎相等的名称空间,如:

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

代码的问题是,当编译器看到Internal.AnzeigeOptionen行时,由于名称空间冲突,它试图将Internal解决为Test.Internal

您可以在Test.Internal声明之外使用另一个名称重新导入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;
    }
}

相关内容

最新更新