@eXe1en7

Как вернуть значение из collection.find()?

var shortLinks = [];

    Link.find({}).exec(function (err, links) {

        if (err) {
            console.log(err);

        } else {

            links.map(link => {
                shortLinks.push(link.shortLink);
            });
        }
    });
    console.log(shortLinks); // тут массив пустой


При вызове массива в рамках find() он заполнен и всё окей, но как его вернуть, что бы он стал доступен за пределами find
  • Вопрос задан
  • 218 просмотров
Решения вопроса 1
exec() Вернет Promise его и обрабатывайте.
var shortLinks = Link.find().exec();
// ...

shortLinks.then(function(links){
  // work with links
}, function(err){
  // some error
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы