没有 "new" 就无法调用 "x"
"x" cannot be invoked without "new"
目前正在学习 Brad Traversy 的关于使用 node.js 编写交互式 WebApp 的教程,我 运行 遇到了一个问题,当我粘贴他的 github 时仍然存在顺便说一句。
const MongoStore = require("connect-mongo")(session)
我正在使用 connect-mongo 来存储会话数据,但是 require 不起作用,它抛出了这个错误:
TypeError: Class constructor MongoStore cannot be invoked without 'new'
谁能帮我做一个简短的解释和一段代码来解决这个问题,因为我在 Whosebug 上浏览了几个类似的问题,但并没有真正理解它。
干杯
教程可能很旧。库 API 可以更改,我建议您使用来自 https://www.npmjs.com/package/connect-mongo
的最新文档
此外,如果你能找到它,你可以安装本教程中使用的与 npm i connect-mongo@versionhere
相同版本的 connect-mongo
新用法:
const session = require('express-session');
const MongoStore = require('connect-mongo');
app.use(session({
secret: 'foo',
store: MongoStore.create(options)
}));
而不是 new MongoStore()
,看来您需要使用 MongoStore.create(options)
目前正在学习 Brad Traversy 的关于使用 node.js 编写交互式 WebApp 的教程,我 运行 遇到了一个问题,当我粘贴他的 github 时仍然存在顺便说一句。
const MongoStore = require("connect-mongo")(session)
我正在使用 connect-mongo 来存储会话数据,但是 require 不起作用,它抛出了这个错误:
TypeError: Class constructor MongoStore cannot be invoked without 'new'
谁能帮我做一个简短的解释和一段代码来解决这个问题,因为我在 Whosebug 上浏览了几个类似的问题,但并没有真正理解它。
干杯
教程可能很旧。库 API 可以更改,我建议您使用来自 https://www.npmjs.com/package/connect-mongo
的最新文档此外,如果你能找到它,你可以安装本教程中使用的与 npm i connect-mongo@versionhere
新用法:
const session = require('express-session');
const MongoStore = require('connect-mongo');
app.use(session({
secret: 'foo',
store: MongoStore.create(options)
}));
而不是 new MongoStore()
,看来您需要使用 MongoStore.create(options)