我正在使用Visual Studio 2013 Ultimate Update 4和Typescript。
我有一个像MyClass.ts这样的课程:
/// <reference path="interfaces/IMyClass"/>
export = MyModule;
module MyModule {
class MyClass {
constructor(myObject: IMyClass){....}
...
}
}
另一个MyInterface.ts:
export = MyModule;
module MyModule {
interface IMyClass {
...
}
}
VS2013没有在MyClass文件中确认IMyClass引用(也没有intellisense),但引用就像VS可以看到它一样(没有红色下划线表示无法找到该文件)。
如果我将接口文件名更改为MyInterface.d.ts,它会做同样的事情。
如果我将MyInterface.d.ts中的界面更改为:
//export = MyModule ;
declare module MyModule {
interface IMyClass {
...
}
}
它也失败了。
如果我将MyInterface.d.ts中的界面更改为:
//export = MyInterfaces ;
declare module MyInterfaces {
interface IMyClass {
...
}
}
它有效。
我错过了什么吗?所以我们只能对.d.ts文件使用引用注释,导出的模块名称可以是相同的??
我发现很多关于打字稿中模块的东西让人感到困惑。
提前致谢。
答案 0 :(得分:0)
VS2013未在MyClass文件中确认IMyClass引用(也没有智能感知),
使用外部模块的两个TypeScript文件之间的模块MyModule
是不同的。因此,您不会在第二个文件interface IMyClass
中获得MyModule
。
提示:您可能希望在TypeScript中查看内部与外部模块(提示:如果使用外部模块,请不要使用内部模块)。 https://www.youtube.com/watch?v=KDrWLMUY0R0&hd=1