Всички методи на драйвер на MongoDB, които осъществяват достъп до данните в базата данни (като count
и toArray
), предоставят резултатите си на обаждащия се асинхронно чрез параметър на функцията за обратно извикване, а не чрез връщана стойност, така че да не блокират единичната нишка node.js.
Така че проверката би била нещо подобно:
collection.count(function (err, count) {
if (!err && count === 0) {
populateDB();
}
});