我相信这是一个相当简单的任务,但目前我无法理解它。我有一组嵌套的forEach循环,需要在所有循环运行完成后有一个回调。
我可以使用async.js库。
以下是我的代码:
const scanFiles = function(accounts, cb) {
let dirs = ['pending', 'done', 'failed'];
let jobs = [];
accounts.forEach(function(account) {
dirs.forEach(function(dir) {
fs.readdir(account + '/' + dir, function(err, files) {
files.forEach(function(file) {
//do something
//add file to jobs array
jobs.push(file);
});
});
});
});
//return jobs array once all files have been added
cb(jobs);
}
scanFiles
返回Promise
而不是使用回调函数,这样做可以吗? - Diego ZoracKy