18

为了将我的 .ts 源文件与 .js 输出分开,我试图在 TypeScript 中实现一个正式的文件观察器,似乎不存在为单个文件指定输出路径的能力。

流程,为了清楚起见:我开始查看我的整个src目录,src/views/HomeView.tspublic/js/views/HomeView.js.

使用tsc myfile.ts --out myfile.js它遍历所有模块并在 .ts 文件存在的相同路径中编译每个模块,而不将最终文件放置在正确指定的路径中。但是,它确实会创建一个空文件,我希望它最终会在其中结束。

我在想:

1)是否可以使用--out参数并编译一个文件?我不希望它遍历导入并编译每个文件,而只是在编译时进行语法/错误检查(这只是次要要求,不是必需的);和

2) 编译器中是否存在阻止它正确组合/创建文件的错误?同样,路径指令中的最终输出--out为空,但确实创建了一个文件。

任何帮助,将不胜感激。

* 更新 *

虽然我不想结束这个问题,因为我相信这仍然是一个问题,但我继续实施核心 TypeScript 编译器来实现我需要做的事情,tsc完全绕过。有关更多信息和用法,请参阅https://github.com/damassi/TypeScript-Watcher

4

1 回答 1

16

当您使用该--out参数时,您会得到一个文件,编译器会遍历依赖项并为最终文件计算出正确的顺序。

例如...

tsc --out final.js app.ts

将在其中找到任何依赖app.ts项并全部编译它们。在它计算出正确的顺序后,它将把所有的 JavaScript 保存在final.js. 如果此 JavaScript 文件为空,则通常表示编译器错误。

不能仅使用该--out参数为您指定的 TypeScript 文件生成 JavaScript 文件,除非该文件没有依赖项。

于 2013-01-26T14:14:04.330 回答