在 ES6 之前的版本中,这是我导入 connect-mongo
( session )的方式:
var MongoStore = require("connect-mongo")(session);
但是我如何在 ES6 中导入它呢?
import MongoStore from 'connect-mongo';
let monStore = MongoStore(session);
错误:
const Store = connect.Store || connect.session.Store;
^
TypeError: Cannot read property 'Store' of undefined
有什么想法吗?
最佳答案
使用非常相似的connect-mongodb-session,您可以:
import { default as connectMongoDBSession} from 'connect-mongodb-session';
const MongoDBStore = connectMongoDBSession(session);
var store = new MongoDBStore({
uri: 'mongodb://localhost:27017/tmp',
collection: 'sessions'
});
两个包(connect-mongodb-session
和 connect-mongo
)都导出一个匿名函数,该函数将 express-session
模块作为一个论点。此函数返回一个构造函数,并使用modules.export 导出,因此它被视为默认导出,您可以使用import 导入它{ default as NameForAnonymousFunction } 来自 'connect-mongo'
。
现在,我认为您应该遵循的一个很好的学习习惯是尝试阅读您正在安装的软件包的实际代码,至少是 index.js。
因为 connect-mongo
使用 mongodb@2.2.36
而 connect-mongodb-session
使用 mongodb@3.0。 11
,我在connect-mongo
关于node.js - ES6 - 如何导入 connect-mongo( session )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39052429/