koa启动报错

Koa start error

......\node_modules\koa\lib\response.js:47
const { res } = this;
      ^

SyntaxError: Unexpected token {
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (......\node_modules\koa\lib\application.js:11:18)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)

当我开始我的 koa 演示时,控制台显示这个。
节点版本:v4.4.7
"koa": "^2.2.0"
这是我的 entry.js:

const Koa = require('koa');
const app = new Koa();

app.use(ctx => {
  ctx.body = 'Hello Koa';
});

app.listen(3000);

在我删除 response.js:47 和 context.js:124

中的 {} 之后
const res = this;

一切正常ok.I不知道为什么。

因为const res = this; 意味着常量变量 res 等于这个但是 const { res } = this; 是对象解构 (http://exploringjs.com/es6/ch_destructuring.html) 它等于 const res = this.res; 所以如果 this 没有 属性 res 你会收到错误。