Синхронное извлечение данных из коллекции в mongodb, как?
⠀Суть вопроса в заголовке вопроса . Всем доброго времени суток . Имеет смысл извлечь синхронно данные из коллекции в mongodb, данные имеет смысл возвратить через возвратный аргумент функции .
Lynn «Кофеман», хочу прояснить для себя: если выполняется await на функцию с промис (т.е. она асинхронна), смысл ведь в том, что происходит ожидание окончания перед тем как переходить к следующей инструкции после await, не так ли?
Значит, если мы ожидаем окончания результата от БД, то с await мы дождемся пока вернутся ответ, а после этого выполнится следующая инструкция.
Василий Банников, .find() возвращает курсоp коллекции который можно использовать в toArray или .forEach для получения внутренних документов, имхо . При выполнении такого кода
var ret = [];
coll.find().forEach( (document) => {
ret.push(document);
} )
return ret;
ret ВСЕГДА [] вне зависимости от наличия данных в коллекции coll и это странно , видимо внутри forEach есть вызовы асинхронных методов .