TypeScript不编译引用的文件

时间:2013-03-08 00:20:22

标签: typescript

我正在使用TypeScript编译一些相互引用的文件。这些文件相互引用。

问题是当我编译它们时,它包括它引用的文件的编译内容。

示例:

// in Foo.ts
class Foo {}

// in Bar.ts
/// <reference path='./Foo.ts'/>
class Bar extends Foo {}

如果我尝试编译Bar.ts,那么输出也会包含Foo的代码。

基于另一个线程(如下所述),如果使用--out参数,它看起来就像这样做。但是,我需要使用out参数,但不要将它链接起来(因为我会自己重新连接)。

有没有人知道如何分离这两部分功能?

注意: 这不是Referencing TypeScript file includes whole file in output的重复,因为这纯粹是为了使用Web Essentials。我直接使用命令行编译器,但问题类似。

2 个答案:

答案 0 :(得分:2)

如果将目录名称(而不是文件名)传递给-out开关,您将获得单独的编译。您需要0.8.2或更高版本才能执行此操作。

答案 1 :(得分:1)

我正在遭受同样的痛苦。关于它的Here is a discussion on codeplex,它也引用了bug regarding references。如果有帮助,请投票。

我们正在构建模块化SDK,因此重复的代码是一个真正的问题。我们最终只使用Visual Studio工具的引用,以及生成JavaScript的自定义构建系统。系统为所有依赖模块构建.d.ts decls,然后使用这些decls构建依赖模块,传递--noresolve标志以防止<reference ...>被接收。