javascript - 为什么我收到错误“需要生成器功能”
问题描述
我通过 npm 安装了模块“koa-cache-control”。我在 index.js 中添加了以下几行。
const cacheControl = require('koa-cache-control');
然后...
app.use(cacheControl({
noCache: true
}));
这是我在启动节点时遇到的错误。有什么线索吗?
AssertionError: app.use() requires a generator function
at Application.app.use
(/home/www/node_modules/koa/lib/application.js:106:5)
at Object.<anonymous> (/home/www/index.js:17:5)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.runMain (module.js:604:10)
at run (bootstrap_node.js:389:7)
at startup (bootstrap_node.js:149:9)
谢谢!
解决方案
您似乎使用的是旧版本的 Koa。1.x 版本使用基于生成器的中间件类型,在版本 2 中更改为 Promises。
您要么必须更新 Koa,要么使用旧版本1.0.0
的koa-cache-control
.
推荐阅读
- python - 如何在熊猫系列中的两个元素之间切片
- c# - 画布中的元素位置未更新
- java - 声纳 - 不应取消引用空指针 - 即使使用 util 方法检查空指针
- c# - JSON如何反序列化日期时间并将UTC转换为指定时区?
- html - 将 img 大小(保留纵横比)自动缩放到父级的 div 高度
- php - 使用 Codeigniter 在服务器中没有此类文件或目录时出错
- function - LUA 错误:尝试调用方法“”(零值)
- ms-access - MS Access VBA 删除空文件夹
- c# - C# WinForm 停止控件属性设置为默认值,当它设置为一个值时也是默认值
- c# - 为什么 System.Data.SqlClient.SqlDataAdapter 没有 FillAsync 方法?