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

Node.js Express连接MongoDB报err未定义ReferenceError如何解决

报错根因

这个ReferenceError: err is not defined是JavaScript基础语法错误,和你是否安装mongodb包、是否修复npm依赖没有关系:你传给db.connect()的回调函数没有在形参中声明err变量,函数内部直接使用err时,JS引擎找不到对应变量定义,就会抛出这个引用错误。

直接修复方法

给回调函数补上err形参即可,修正后的代码:

var db=require('./config/connection');

db.connect((err)=>{ // 补全err形参
  if(err) console.log("connection Error"+ err);
  else console.log("Database Connected to port 27017");
})
后续连接异常排查(补完参数如果仍连不上库再检查)
  • 确认本地MongoDB服务已经正常启动,27017端口没有被其他进程占用、没有被防火墙拦截
  • 检查./config/connection文件内的连接实现,确认connect方法遵循Node.js通用回调规范:异步执行出错时将错误对象作为回调第一个参数返回,连接成功时第一个参数返回空值
  • 注意你之前执行的npm audit fix --force会强制升级依赖到跨大版本,可能引入版本不兼容问题,如果后续出现依赖相关报错,可以删除node_modules文件夹和package-lock.json文件后重新执行npm install恢复依赖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 09:27:30