Du kan bruge async.series()
at køre hver opgave. Hver opgave f.eks. getBranches()
og getSerials()
vil "returnere" en række data. Når serien er færdig, bør du have en række af data, så du skal udflade den.
async.series([
function getBranches(done) {
async.mapSeries(branch_name, function (item, done) {
// FYI 'done' inside this function is not the same 'done' as outside the function
// ...
}, done);
},
function getSerials(done) {
async.mapSeries(serial, function (r_serial_no, done) {
// ...
}, done);
},
// etc
], function (err, data) {
// data should come back as multidimensional array
// so you should only need to flatten it
var finalJSON = [].concat.apply([], data);
});
Se dette svar angående udfladning af et array af arrays i JavaScript.
Rediger :Jeg har aldrig brugt async.concatSeries() før, men det måske være kortere.