【问题标题】:Error connecting to a mongoose database in javascript在 javascript 中连接到 mongoose 数据库时出错
【发布时间】: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)

谁能解释一下发生了什么?

【问题讨论】:

    标签: javascript node.js mongodb mongoose


    【解决方案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');
        }
    });
    

    【讨论】:

      猜你喜欢
      • 2020-09-08
      • 2017-03-02
      • 2020-10-30
      • 2017-12-08
      • 2020-09-30
      • 1970-01-01
      • 2014-07-18
      • 1970-01-01
      • 2012-07-21
      相关资源
      最近更新 更多