关于koa的这段代码
发布于 3 个月前 作者 IEfucker 403 次浏览 来自 问答

https://github.com/guo-yu/koa-guide里有这段 koa2中可以写作 app.use(ctx => { ctx.body = ‘Hello World’; });

用于替换 app.use(function *(){ this.body = ‘Hello World’; });

不理解koa2中的写法,=>是箭头函数吗,它也能用于generator吗, https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions 箭头函数文档中好像提到不能代替generator啊

5 回复

use接受的参数是个function typeof fn !== 'function' 在将来的koa版本中将不接受 generator 所以现在尽量早点迁移吧 https://github.com/koajs/koa/tree/v2.x#old-signature-middleware-v1x---deprecated

@jiangzhuo 首先感谢,不过那个文档的意思是以后不用generator作为中间件了吗

@IEfucker @i5ting 的文档里也写了 以后用koa-convert或者co.wrap转一下

以前是koa内部会帮你把generator转一下,新版的koa表示它不想干这个事情了

感谢两位,大概理解了

回到顶部