我正在使用最新的协同模块(4.6)。
这是一个 Koa 中间件。因此它已经被co()
包裹了。
create: function * () {
try {
this.body = yield services.createIt({obj: true})
} catch (err) {
this.body = { "errors": err.details }
this.status = err.status
}
}
它正在调用我手动包装的另一个生成器函数co
:
const co = require('co')
createIt: co(function * (obj) {
console.log(obj) // --> undefined
}
为什么我“松开”参数?