2018-09-30 async.mapSeries的回调函数必须有两个参数

    router.get('/linktestrange', function(req, res, next) {
        var idarrays = [];
        for (var id = req.query.creative_id_min; id <= req.query.creative_id_max; id++) {
            idarrays.push(id);
        }
        async.mapSeries(idarrays, function(id, callback) {
            querydata.creative_id = '' + id;
            debugasync("sync map debug : ", querydata);
            linktestbyid(querydata, queryday, (rs) => {
                debugasync("debug async rs : ", rs);
                callback(rs);
            })
        }, (rs) => {
            debug("all async rs : ", rs);
            res.send(rs);
        });
    });

注意: callback(rs); 这样导致 async.mapSeries 只对 idarrays遍历了第一个值就结束了。

正确地写法是下面的,callback函数必须有两个参数:
    callback(null,rs);  

    (err,rs) => {
            debug("all async rs : ", rs);
            res.send(rs);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容