使用Mongoose连接MongoDB时报错mongoose.connect() is undefined如何解决
报错原因
你引入mongoose的语法有误:mongoose 模块的导出对象本身就是mongoose实例,不存在名为mongoose的顶层属性,因此你使用解构赋值const { mongoose } = require('mongoose')得到的mongoose变量为undefined,调用undefined.connect时触发报错。
修复方案
- 方案1:直接引入整个模块,不使用解构
const mongoose = require('mongoose'); const db = 'dburl.com/db' mongoose.connect(db, { useNewUrlParser: true }) .then(() => console.log('MongoDB Connected')) .catch((err) => console.log(err));
- 方案2:按需解构
connect方法直接使用
const { connect } = require('mongoose'); const db = 'dburl.com/db' connect(db, { useNewUrlParser: true }) .then(() => console.log('MongoDB Connected')) .catch((err) => console.log(err));
内容的提问来源于stack exchange,提问作者Ace
相关产品推荐
相关产品推荐

