将TypeScript编译为多个目标

时间:2019-11-13 10:31:02

标签: typescript ecmascript-6 ecmascript-5 tsconfig

我想将Typescript文件编译为多个目标,例如ES5和ES6。我有以下示例目录:

ES5

ES6

test.ts

tsconfig.json

因此,当我运行编译器时,我希望它将test.ts编译为ES5到ES5文件夹,编译为ES6到ES6文件夹。有可能吗?

1 个答案:

答案 0 :(得分:1)

一个简单的解决方案是使用不同的目标和输出目录创建两个tsconfig.json文件。

tsconfig-es5.json

{
  "compilerOptions": {
    "target": "ES5",
    "outDir": "./ES5",
    // Additional configuration like module type etc.
}

tsconfig-es6.json

{
  "compilerOptions": {
    "target": "ES6",
    "outDir": "./ES6",
    // Additional configuration like module type etc.
}

然后创建连接建筑物的构建脚本,例如对于Windows:

tsc --project ./tsconfig-es5.json && tsc --project ./tsconfig-es6.json

另一种选择是拥有一个tsconfig.json并在构建脚本中直接指定targetoutDir参数(请参见Compiler Options)。