我正在尝试使async正常工作。在这个例子中,我想创建并保存一些mongoose
个对象,并在作业完成时获得回调。
即使对象保存在数据库中,也不会触发回调。控制台日志也不会显示。任何人都可以帮我找出我错过的东西吗?
var number_of_objects = 5;
async.times(number_of_objects, function(n, next){
var myObject = new Object({ random_string : Math.random().toString(36).substring(7), isActive: false });
myObject.save(n,function(err,object) {
console.log("saved");
console.log(n);
next(err,object);
});
},function(err, objects) {
console.log(objects);
res.sendStatus(200);
});
非常感谢提前
答案 0 :(得分:3)
代码中的问题是mongoose
的{{3}}函数只接受一个参数 - 回调函数。
因此,您应该将代码修改为以下内容:
myObject.save(function(err,object) {
console.log("saved");
console.log(n);
next(err,object);
});