将打字稿文件编译成一个文件,但其中一些作为单个文件

Compiling typescript files into one file, but some of them as single files

我有一个包含很多 Typescript 文件的项目,我想将它们编译成一个文件。 我可以在 Visual Studio 中进行设置,没问题。

但是我也有一些文件应该编译在他们自己的文件中。

基本上,我有这样的结构:

js/
tests/

js/ 中的所有内容都应该编译成一个文件,tests/ 中的所有内容都应该是一个单独的文件。 我现在可以编译成单独的文件,并与 Webessentials 一起使用捆绑包,但这不太好调试。

有没有办法告诉 Typescript 编译器对不同的文件夹有不同的编译设置? 我也真的很想在保存文件时仍然编译它。

不,您必须 运行 编译器为每个文件夹设置不同的参数。由于您使用的是 Visual Studio,您可以通过创建一个单独的项目来实现这一点,该项目包含 /tests 文件夹下的文件。

更新: @curpa 当时的回答是正确的,但从那时起,Typescript 中添加了一些更新。

因为,我认为 Typescript 1.8(不太确定?),您可以使用 tsconfig 文件来配置 typescript 配置。您可以将这些文件添加到不同的文件夹中,然后打字稿编译器将根据同一文件夹或其父文件夹之一中的 tsconfig 转译文件。

有了这个,您就可以将项目配置为在不同的文件夹中使用不同的设置进行转译。

在我的示例中,文件夹 js/ 和 tests/ 可能如下所示: tsconfig.json 在 js/

{
    "compilerOptions": {
        ...
        "outFile": "../../built/local/tsc.js"
    },
    "include": [
        "**/*"
    ]
}

tsconfig.json 在测试中/

{
    "compilerOptions": {
        ...
        // not outfile specified, ts files will be transpiled in
        // a js file, for each
    },
    "include": [
        "**/*"
    ]
}