首次使用MongoDB报错:mongodb.connect is not a function,求问题排查
解决"mongodb.connect is not a function"报错问题
这个报错是因为你使用的MongoDB Node.js驱动版本(v4及以上)调整了API结构,connect方法不再挂载在默认导出的mongodb对象上,而是属于MongoClient类的静态方法。
修改代码即可解决,调整后的代码如下:
let express = require('express') // 从mongodb模块中获取MongoClient let { MongoClient } = require('mongodb') let app = express() let db let connectionString = '...' // 调用MongoClient的connect方法建立连接 MongoClient.connect(connectionString, {useNewUrlParser: true}, function(err, client) { // 增加错误处理,避免连接失败后无提示 if (err) { console.error('数据库连接失败:', err) return } db = client.db() console.log('数据库连接成功') app.listen(3000, () => { console.log('服务器运行在3000端口') }) })
额外说明
- 如果你习惯传统写法,也可以用
let MongoClient = require('mongodb').MongoClient代替解构导入,效果一致。 - 新增的错误处理能帮你快速定位连接失败的原因(比如连接字符串错误、网络问题等),建议保留。
内容的提问来源于stack exchange,提问作者Kayna2D
相关产品推荐
相关产品推荐

