我正在尝试为个人项目创建一些定义文件。 (我在这里用不同的类/模块名重新创建上下文,因此建模可能没有多大意义。)
我有以下接口定义文件,它没有依赖关系,编译正常:
// File: automobile.d.ts
declare module Transport {
interface Automobile {
// ... variables and functions
accelerate(direction:String):Boolean;
}
}
但是,在此文件中,当我尝试在同一个Automobile
模块中引用此文件中的Transport
时,我得到Cannot find name 'Automobile'
。
// File: automobile_collection.d.ts
declare module Transport {
interface AutomobileCollection {
size:Number;
getItemAt(index:Number): Automobile;
}
}
我已尝试导出界面,但这没有帮助。我有什么想法吗?
答案 0 :(得分:2)
感谢David,我发现它不是编译器错误,因为我的项目使用tsc
编译得很好。
事实证明,您需要在/// <reference path="./automobile.d.ts"/>
的顶部添加automobile_collection.d.ts
,以便让Webstorm智能地找出引用的类型。