运行MongoDB连接代码出现mongodb.connect is not a function报错是什么意思?
报错原因
该报错是由于你安装的Node.js MongoDB驱动版本为v4.0及以上,该版本已移除原顶层全局方法mongodb.connect(),旧教程的写法不再适配新版本驱动。
解决方法
方法1:调整代码适配新版本驱动(推荐)
新版驱动需要先引入MongoClient类,再通过类实例调用连接方法,参考修改后的代码:
// 引入MongoClient类 const { MongoClient } = require('mongodb'); let db; const connectionString = '替换为你自己的数据库连接地址'; // 实例化客户端对象 const client = new MongoClient(connectionString, { useNewUrlParser: true, useUnifiedTopology: true }); // 执行连接操作 client.connect(function(err) { if (err) throw err; db = client.db('替换为你的数据库名称'); // 后续数据库操作逻辑写在此处即可 });
方法2:降级驱动到v3.x兼容版本
如果你不想修改现有代码,可以直接安装旧版本的驱动包,执行命令:npm install mongodb@3.7.3
安装完成后原有代码即可正常运行。
内容的提问来源于stack exchange,提问作者Ana kamilova
相关产品推荐
相关产品推荐

