auto(tasks, [callback]);
用来处理有依赖关系的多个任务的执行。示例如下:
async.auto({
getData: function(callback){
callback(null, 'data', 'converted to array');
},
makeFolder: function(callback){
callback(null, 'folder');
},
writeFile: ['getData', 'makeFolder', function(callback, results){
callback(null, 'filename');
}],
emailLink: ['writeFile', function(callback, results){
callback(null, {'file':results.writeFile, 'email':'user@example.com'});
}]
}, function(err, results) {
console.log('err = ', err);
console.log('results = ', results);
});
示例中writeFile依赖getData和makeFolder,emailLink依赖writeFile。
执行示例代码,将所有的results输出到控制台,观察输出顺序和内容。