【发布时间】:2016-07-21 00:07:17
【问题描述】:
我正在迁移以在 nodejs/koa 项目中使用 typescript。我发现我必须将 .tsconfig 更改为以 es6 为目标,否则它会报错:生成器仅在以 ECMAScript 6 或更高版本为目标时可用。
// index.ts
let koa = require('koa');
let app = koa();
export {app};
app.use(function *(){
return yield this.body = 'Hello World';
});
app.listen(3090);
// .tsconfig
{
"compilerOptions": {
"module": "commonjs",
"target": "es5", // I have to switch to es6 to pass
"noImplicitAny": false,
"sourceMap": true,
"outDir": "./dist"
},
"exclude": [
"node_modules",
"dist"
]
}
虽然它适用于 es6,但我担心 nodejs 运行时是否完全覆盖 es6 功能(有人告诉我覆盖率是 96% 左右)。我想知道为什么我不能以 es5 为目标,因为 typescript 是一个转译器,它应该能够像 babel 一样编译生成器来承诺?
顺便说一句,我已经尝试安装 es6-shim 打字没有运气。
【问题讨论】:
标签: javascript node.js typescript