使用UMD选项将typescript编译到单个文件中

时间:2017-01-20 03:11:04

标签: typescript umd

我正在开发一个使用import / export样式语法的typescript项目。我想将所有打字稿文件编译成一个文件。这是我的 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,我该如何实现?

1 个答案:

答案 0 :(得分: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',
        }
    }