5

我正在开发一个使用import/export样式语法作为模块的打字稿项目。我想将所有打字稿文件编译成一个文件。这是我的tsconfig.json 的样子,

{
  "compilerOptions": {
    "module": "UMD",
    "noImplicitAny": false,
    "noUnusedLocals": false,
    "noUnusedParameters": false,
    "removeComments": true,
    "preserveConstEnums": true,
    "strictNullChecks": true,
    "target": "ES5",
    "lib": [
      "es2016",
      "dom"
    ],
    "outFile": "dist/beetl.js"
  },
  "include": [
    "src/**/*"
  ],
  "exclude": [
    "node_modules",
    "**/*.spec.ts"
  ]
}

当我运行tsc命令时,出现以下错误,

错误 TS6082:仅支持“amd”和“系统”模块以及 --outFile。

我不想使用 AMD 或 System,我想要 UMD,我该如何实现?

4

1 回答 1

3

如果您使用 grunt-typescript npm 模块和 grunt 进行转译,UMD 将使用单个文件输出。下面是您的 gruntfile.js 的示例配置块:

typescript: {
        options: {
            module: 'umd', 
            target: 'es5',
            rootDir: 'src',
            sourceMap: true,
            declaration: true,
            removeComments: true
        },
        base: {
            src: ['src/**/*.ts', "!**/*.d.ts"],
            dest: 'dist/gen/OUT_FILE.js',
        }
    }
于 2017-05-30T18:27:32.707 回答