在 javascript 中连接到 mongoose 数据库时出错
Posted
技术标签:
【中文标题】在 javascript 中连接到 mongoose 数据库时出错【英文标题】:Error connecting to a mongoose database in javascript 【发布时间】:2020-11-14 09:28:53 【问题描述】:我正在运行这段代码:
const mongoose = require('mongoose');
const DB_NAME = 'eventdb';
const HOST = '127.0.0.1:27017';
mongoose.createConnection(`mongodb://$HOST/$DB_NAME`,useNewUrlParser:true);
const db = mongoose.connection;
db.on('error', console.log('Didn\'t connect properly!'));
我得到这个输出:
没有正确连接! 事件.js:111 throw new ERR_INVALID_ARG_TYPE('listener', 'Function', listener); ^
TypeError [ERR_INVALID_ARG_TYPE]:“listener”参数必须是函数类型。收到>未定义 在 checkListener (events.js:111:11) 在 _addListener (events.js:348:3) 在 NativeConnection.addListener (events.js:406:10) 在对象。 (/Users/sebastianc/Desktop/codeworks/exercises/assessments/weekly->assessment-6/server/Models/event-model.js:11:4)
谁能解释一下发生了什么?
【问题讨论】:
【参考方案1】:你必须传递一个回调函数:
db.on('error', () => console.log('Didn\'t connect properly!'));
查看相关帖子:TypeError [ERR_INVALID_ARG_TYPE]
【讨论】:
你是如何调试的?是经验吗?因为堆栈跟踪根本没有引用那行代码 过去有时我自己也偶然发现了这一点。您的代码上也没有太多选项可以相应地应用错误消息【参考方案2】:我建议像这样与猫鼬联系。
mongoose.connect(`mongodb://$HOST/$DB_NAME`,useNewUrlParser:true, function (err)
if (err)
console.log('Mongo Error ' + err);
else
console.log('MongoDB Connection Established');
);
【讨论】:
以上是关于在 javascript 中连接到 mongoose 数据库时出错的主要内容,如果未能解决你的问题,请参考以下文章
在 NodeJS 中连接到 websocket 时出现协议错误