koa框架中间件的this指针问题
发布于 7 年前 作者 zswnew 3804 次浏览 来自 分享

koa里的中件间中的回调函数内的this指针是怎么绑定了res, req那些对象的,能给个例子吗 var koa = require(‘koa’); var app = koa(); app.use(function *(){ this.body = ‘Hello World’;//这个匿名函数中的this }); app.listen(3000); 求大佬讲解哈嘛

来自酷炫的 CNodeMD

3 回复

我猜测用的bind函数绑定了含有请求对象函数的this

来自酷炫的 CNodeMD

你都知道了,干嘛不去看源码。

function convert (mw) {
	...
  const converted = function (ctx, next) {
    return co.call(ctx, mw.call(ctx, createGenerator(next)))
  }
...
  return converted
}

const ctx = this.createContext(req, res); mw就是是generator

回到顶部