使用' koa-static',app.use(serve(' public'))会抛出“需要生成器函数”错误消息

时间:2017-05-15 05:43:32

标签: javascript node.js koa

var serve = require('koa-static');
var koa = require('koa');
var app = koa();                              
app.use(serve(__dirname + '/public')); 

我得到的错误是

  

AssertionError:app.use()需要生成器函数

此处的示例显示使用这种方式https://www.npmjs.com/package/koa-static

1 个答案:

答案 0 :(得分:1)

这可能正在发生,因为您正在使用旧的Koa v1,它使用生成器函数用于中间件。默认情况下,许多中间件现在已经切换到支持Koa v2,如果你想将它与Koa v1一起使用,你需要安装正确版本的中间件。

在这种情况下,你可以这样做:

npm install koa-static@2

安装支持Koa v1的旧版koa-static。一般来说,查看中间件的GitHub存储库是个好主意,以便通过查看可用的分支来查看可以安装的版本。