Родният драйвер на MongoDB за Node следва конвенцията на Node.js за асинхронни функции, а именно, че всеки метод получава функция за обратно извикване като последен параметър. Така че вместо db.collection.find(query).count()
, вашата функция трябва да бъде пренаписана като:
db.collection.find(query).count( function(err, count){ // do stuff here }
Параметърът count
улавя резултата от вашата заявка.
Можете също така да опростите функцията до db.collection.count(query, function(err, count){}
.
Вашата функция за вмъкване също трябва да следва същата конвенция, като използва функция за обратно извикване с формата на function(err, res){}
като последен параметър.
Бих препоръчал да разгледате Документите за собствен драйвер на MongoDB за повече информация.
Редактирано, за да даде пример в CoffeeScript: Ето функцията, пренаписана със синтаксиса на CoffeeScript.
db.Event.count(eventobj, (err, count) ->
// do stuff