此功能是async.waterfall
的一部分
arr
包含2个具有foldername,文件名,宽度,高度等的对象
我想对每个文件执行文件操作,并将这2个文件放在另一个数组photoArr
中
然后我想将photoArr
数组传递给async.waterfall
中的下一个函数
问题是:
我无法到达回调函数,这是async.each
的第三个参数。控制台记录calling next
,但从不记录oops error
或here hi
。
function(arr, image, callback) {
console.log("function3");
var photoArr = [];
async.each(arr, function(value, next) {
Jimp.read(`${photosDirectory}/${value["Folder"]}/${value["Photo"]}.jpg`, (err, photo) => {
if(err) next(err);
else {
photo.resize(value["Size-X(cm)"] * 37.8, value["Size Y(cm)"] * 37.8).rotate(-90);
photoArr.push(photo);
if(photoArr.length == 2) {
console.log('calling next');
next(null);
}
}
});
}, function(err) {
if(err) {
console.log('oops error');
console.log(err);
} else {
console.log("here hi");
console.log(photoArr.length);
callback(err, arr, image, photoArr);
}
});
}