为每个ts文件生成TypeScript 2.1 async / await ES5 __awaiter和__generator

时间:2016-11-08 23:22:33

标签: typescript webpack async-await typescript2.1

我正在尝试使用TypeScript的新rc版本来获得ES5的asnc / await支持。

但是我使用生成的__awaiter和__generator方法遇到了奇怪的行为,如果没有使用outFile编译器选项,它们似乎是为每个ts文件生成的。

有没有办法只生成__awaiter和__generator方法的单个实例,同时仍然没有使用outFile? 我不想使用outFile标志的原因是我目前使用webpack进行捆绑,因为我需要支持导入HTML模板文件。

2 个答案:

答案 0 :(得分:4)

使用新的--importHelpers编译标志。 Docs

答案 1 :(得分:3)

  • tsconfig.json 中,在"compilerOptions"下添加:

    `"importHelpers": true`
    
  • 将typescript帮助程序库安装为依赖项:

    npm install tslib --save
    

Typescript将在需要时尝试导入帮助程序,Webpack会自动捆绑tslib一次。如果您要发布库,可以告诉webpack将tslib外部考虑为the externals option