You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用MongoStore.create时报Cannot read property 'create' of undefined如何解决

问题解决方法

错误原因

TypeError: Cannot read property 'create' of undefined

该错误是因为connect-mongo包的导入语法不符合你安装的版本要求,你代码中加的.default是ES模块导入的写法,Node.js默认的CommonJS规范(require导入方式)不需要加这个后缀,导致拿到的MongoStore为undefined,调用create方法自然报错。

具体修复步骤

  • 第一步:修改connect-mongo的导入语句
    把原有代码:
const MongoStore=require('connect-mongo').default

替换为:

const MongoStore = require('connect-mongo')
  • 第二步:检查MongoDB连接地址配置
    你代码里数据库主连接用的是本地地址mongodb://localhost/pizza,但session存储配置里用的是环境变量process.env.MONGO_URI,需要确保项目根目录的.env文件里已经配置了正确的MONGO_URI值,也可以直接把session配置里的地址替换为本地连接地址,避免环境变量缺失报错:
app.use(session({
secret:process.env.COOKIE_SECRET,
resave:false,
store: MongoStore.create({ 
    mongoUrl: 'mongodb://localhost/pizza'
}),
saveUninitialized:false,
cookie:{maxAge:1000*60*60*24}
}));

验证修复

修改完成后重启服务,就不会再报该属性未定义的错误,session会正常存储到MongoDB的sessions集合中。

内容的提问来源于stack exchange,提问作者shatakchhi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 09:33:01