TypeScript:跨多个文件引用接口时找不到名称错误

时间:2015-07-10 14:12:23

标签: typescript

我正在尝试为个人项目创建一些定义文件。 (我在这里用不同的类/模块名重新创建上下文,因此建模可能没有多大意义。)

我有以下接口定义文件,它没有依赖关系,编译正常:

// 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;
    }
}

我已尝试导出界面,但这没有帮助。我有什么想法吗?

1 个答案:

答案 0 :(得分:2)

感谢David,我发现它不是编译器错误,因为我的项目使用tsc编译得很好。

事实证明,您需要在/// <reference path="./automobile.d.ts"/>的顶部添加automobile_collection.d.ts,以便让Webstorm智能地找出引用的类型。