Обратный вызов уже был вызван с использованием асинхронной параллели, почему? - PullRequest
0 голосов
/ 16 ноября 2018

Я использую пакет npm async параллельно.У меня есть два запроса из двух разных баз данных (один API и один из базы данных mLAB MongoDB), а именно company и news.

Тот, который не работает правильно, news.Хотя данные правильно передаются и отображаются в моем файле .pug, я получаю следующее сообщение об ошибке :

(node:21526) UnhandledPromiseRejectionWarning: Unhandled promise 
rejection (rejection id: 2): Error: Callback was already called.

Код, который я использовал:

async.parallel({
    company: function(callback) {
      Company.findById(req.params.id)
        .exec(callback);
    },
    news: function(callback) {
      er.getConceptUri("Uschi").then((conceptUri) => {
        var q = new erBase.QueryArticlesIter(er, {conceptUri: conceptUri, sortBy: "date"});
        q.execQuery((item) => {
            //console.info(item);
            callback(null, item);
        });
      });
    }
}, function(err, results) {
    res.render('company_detail', { title: results.company.name, error: err, company: results.company, news: results.news });
});

Следующая строка кода, говорящая callback(null, item);, кажется неправильной.Как я могу это исправить, чтобы сообщение об ошибке исчезло?Спасибо заранее.

Ссылка на API EventRegistry (используется для news): API EventRegistry

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...