Ошибка при подключении mongodb с помощью модуля обещания - PullRequest
0 голосов
/ 20 сентября 2019

Я новичок в nodejs.Я использую promise модуль для подключения mongodb.Но я сталкиваюсь со следующей ошибкой.

(node:6827) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'db' of undefined
    at /home/luan1412167/Desktop/nodejs_tutorial/mongodb/promise.js:11:21
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
(node:6827) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
var Promise = require('promise');
var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://localhost:27017';

MongoClient.connect(url, { useNewUrlParser: true, useUnifiedTopology: true})
.then(function(err, client){
    // if (err) throw err;
    if (err) {
        console.error('An error occurred connecting to MongoDB: ', err);
    }
    var db = client.db('Employee');
    // db.collection('Employee').updateOne(
    //     {
    //         'EmployeeName' : 'LuanDao'
    //     },
    //     {
    //         $set : {'EmployeeName' : 'AAA'}
    //     }
    // );
    client.close();
});

Я изо всех сил пытался это исправить.Но я пока не могу починить.Любое предложение ценится.Большое спасибо.

1 Ответ

1 голос
/ 20 сентября 2019

Поскольку вы использовали обещания, код необходимо изменить с помощью оператора catch.Измените ваш код, как показано ниже:

MongoClient.connect(url, { useNewUrlParser: true, useUnifiedTopology: true})
  .then((db) => {
    var db = client.db('Employee');
  }).catch((err) => {
    console.error('An error occurred connecting to MongoDB: ', err);
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...