【发布时间】:2019-01-13 19:13:27
【问题描述】:
我正在尝试自学 javascript,并且正在学习 Mozilla 的 Express 教程,但我遇到了让我感到困惑的这段代码。
作为 async.parallel 中的第一个参数传递的对象中的每个函数都被传递一个回调参数。我正在学习回调以及它们是如何工作的。通常,当我看到回调时,稍后会在函数中调用它,并将其传递给回调()或回调(null,result)之类的东西,但我在这里看不到。知道为什么会这样吗?
请注意,count 方法(来自 Mongoose api)接受两个参数,第二个是回调。
exports.index = function(req, res) {
async.parallel({
book_count: function(callback) {
Book.count(callback);
},
book_instance_count: function(callback) {
BookInstance.count(callback);
},
book_instance_available_count: function(callback) {
BookInstance.count({status:'Available'},callback);
},
author_count: function(callback) {
Author.count(callback);
},
genre_count: function(callback) {
Genre.count(callback);
},
}, function(err, results) {
res.render('index', { title: 'Local Library Home', error: err, data: results });
});
};
【问题讨论】:
标签: javascript mongodb mongoose callback