Ожидается, что будет возвращено значение в конце функции стрелки при подключении к MongoDB - PullRequest
0 голосов
/ 01 февраля 2019

Я получаю ошибку eslint:

[eslint] Expected to return a value at the end of arrow function. [consistent-return]

Я проверил, и у каждого пути есть инструкция возврата.Но я чувствую, что моя функция обратного вызова выбрасывает ее для цикла?

Вот код:

let db;

module.exports.initDb = (callback) => {
  if (db) {
    return callback(null, db);
  }

  MongoClient.connect(process.env.MONGO_URL, { useNewUrlParser: true }, (err, client) => {
    if (err) {
      return callback(err);
    }

    db = client.db('partsync');
    return callback(null, db);
  });
};

1 Ответ

0 голосов
/ 01 февраля 2019

В вашем обратном вызове MongoClient.connect есть правильные операторы return, но вам нужен возврат для родительской функции стрелки initDb.Добавление оператора возврата до MongoClient.connect исправит это.Вот обновленный код:

let db;

 module.exports.initDb = (callback) => {
    if (db) {
      return callback(null, db);
    }

    return MongoClient.connect(process.env.MONGO_URL, { useNewUrlParser: true }, (err, client) => {
      if (err) {
        return callback(err);
      }

      db = client.db('partsync');
      return callback(null, db);
    });
  };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...