TypeScript 输出未合并

TypeScript output isn't being combined

我有以下设置:

tsconfig.json

{
    "compileOnSave": true,
    "compilerOptions": {
        "module": "none",
        "outFile": "js/app.js"
    }
}

MyApp.Main.ts

class Main
{
    constructor()
    {
        Utilities.init(this);
    }

    // Other methods
}

MyApp.Utilities.ts

class Utilities
{
    static init(app: Main)
    {
         // Do something with app...
    }

    // Other methods
}

当我保存 .ts 文件或重新编译项目时,我没有 outFile 选项中指定的 app.js 文件,我只得到 MyApp.Main.jsMyApp.Utilities.js编译文件。

我也尝试将 /// <reference ... /> 路径添加到我的 "Main" class,这也不会导致输出被合并。

一些注意事项:

基本上,我需要让它与纯 TypeScript 一起工作,没有模块系统,也没有(默认)ES 目标。

输出没有合并到单个 .js 文件中,我做错了什么?

来自 https://www.typescriptlang.org/docs/handbook/compiler-options.html(在 --module 选项的描述中)

Only "AMD" and "System" can be used in conjunction with --outFile.

所以您应该按照说明更改 module 设置。

通常如果 TS 维护者说这样的话,就没有办法克服它(你不应该)。

I am not allowed to introduce an additional dependency into the project

这是什么样的依赖?模块不会强制您添加任何内容。

您可以省略模块选项,它应该可以工作!

这是我的 tsconfig。

{
  "compilerOptions": {
    "strict": true,
    "target": "es5",
    "removeComments": true,
    "noUnusedLocals":true,
    "noUnusedParameters":true,
    "sourceMap": true,
    "outFile": "docs/js/main.js"
},
  "include": [
    "dev/**/*"
  ]
}