异步如果传递的数组参数具有100个以上的值,则每个异步都不会更新

时间:2018-09-14 14:45:47

标签: javascript node.js async.js

我目前正在尝试使用async.each使用订单号更新数组,以使其并行运行。但是,似乎数组长度越大,错过更新的机会就越多。无论数组中的长度如何,如何更新数组中的每个订单号 平行吗?

下面附有我的JavaScript代码:

axios.post(`/api/admin/add-into-batch`, {orders})
.then(function(data){
    location.reload();
})


router.post('/admin/add-into-batch', function (req, res, next) {
    // req.body.orders = [1,2,3,4,..,120]
    async.each(req.body.orders, function(order, cb){
        CurrentOrder.findByIdAndUpdate(order._id, order, function(err, data){
            if (err) return next(err)
            cb()
        })
    }, function(err) {
    // if any of the update produced an error, err would equal that error
    if( err ) {
      // One of the iterations produced an error.
            // All processing will now stop.
            next(err)
    } else {
            return res.sendStatus(200);
    }
    })
})

0 个答案:

没有答案