NPM 异步系列问题
NPM Async Series Issue
我在使用 npm 异步模块时遇到问题。文档建议以下代码结构将导致顺序执行添加到系列数组的函数,但是当我 运行 以下时,我只得到 "first" console.log。问题是什么?
var async = require('async');
async.series([
function(){ console.log("first")},
function(){ console.log("second")}
]);
async.series
传递一个必须在每个函数末尾调用的 callback
:
var async = require('async');
async.series([
function(callback){ console.log("first"); callback(null, 1); },
function(callback){ console.log("second"); callback(null, 2);}
]);
Async 期望在每个函数完成时调用回调,然后触发下一个函数等。
var async = require('async');
async.series([
function(callback){
console.log("first");
callback(null, 'data'); // first arg is error
},
function(callback){
console.log("second")
callback(null, 'data'); // first arg is error
}
], function(err, results) {
// results === ['data', 'data']
});
文档在解释这个方面有些欠缺
当使用 async.series
时,你应该为每个函数提供一个回调函数,当它被执行时 'tells' async 前进到行中的下一个函数:
async.series([
function(callback){ console.log("first"); callback();},
function(callback){ console.log("second"); callback();}
]);
我在使用 npm 异步模块时遇到问题。文档建议以下代码结构将导致顺序执行添加到系列数组的函数,但是当我 运行 以下时,我只得到 "first" console.log。问题是什么?
var async = require('async');
async.series([
function(){ console.log("first")},
function(){ console.log("second")}
]);
async.series
传递一个必须在每个函数末尾调用的 callback
:
var async = require('async');
async.series([
function(callback){ console.log("first"); callback(null, 1); },
function(callback){ console.log("second"); callback(null, 2);}
]);
Async 期望在每个函数完成时调用回调,然后触发下一个函数等。
var async = require('async');
async.series([
function(callback){
console.log("first");
callback(null, 'data'); // first arg is error
},
function(callback){
console.log("second")
callback(null, 'data'); // first arg is error
}
], function(err, results) {
// results === ['data', 'data']
});
文档在解释这个方面有些欠缺
当使用 async.series
时,你应该为每个函数提供一个回调函数,当它被执行时 'tells' async 前进到行中的下一个函数:
async.series([
function(callback){ console.log("first"); callback();},
function(callback){ console.log("second"); callback();}
]);