我正在尝试编译一个 Koa 应用程序,并且 Koa 有断言检查以确保我将生成器函数作为中间件传递。但是,我想使用 Babel 从 ES7 编译我的服务器端代码,以与前端代码保持一致。
是否可以针对节点和谐而不是 ES5?我在选项中看不到任何有希望的东西,但是选择目标似乎是能够使用编译器完成的标准事情。
更新
将Babel 的再生器转换列入黑名单似乎没有效果,即使我使用的是stage: 1
.
index.js:
require( "babel/register" )({
sourceMaps: "inline",
stage: 1,
blacklist: [ "regenerator" ],
optional: [ "asyncToGenerator" ]
});
var app = require( "./src/server" );
app.listen( process.env.port || 3000 );
src/server.js:
import koa from "koa";
import router from "koa-router";
router.get( "/", function *( next ) {
this.body = "Hi!";
});
let app = koa();
app.use( router() );
export default app;
执行:node --harmony index.js
node --version
v0.12.4