操作を行うために、waterfallの代わりにparallelを使用します。node.jsで非同期操作を構築できません
私はマングースを使用し、私はなぜ私が2行目に予期しないトークンを取得しています。この
module.exports.updateStatus = function(task_id, status, callback){
Task.findOneAndUpdate({_id: task_id},
{$set: {status}},
{upsert: true,'new':true},
callback)
}
ようなモデルの方法がありますか?
async.parallel([
Task.updateStatus(id, status, (err, resp), callback) => {
callback(err, resp)
},
Credit.addCredit(user_id, 10, (err, resp), callback) => {
callback(err, resp)
}
], (err, resp) => {
if(err){
return handleError(err, 'Failed to update task status', res)
}
res.json({
success: true,
result: {task: resp}
})
})
私はupdateStatusでエラーが発生しましたか? addCreditは実行されますか? –
関数のいずれかがコールバックにエラーを渡すと、メインのコールバックがエラーとともにすぐに呼び出されます。続行したい場合は、それぞれasyncを使用し、受信したエラーでコールバックを呼び出すかどうかを決定することができます。 –
私のエラーハンドルは正しいですか?なぜいくつかの人がキャッチして新しいError()を投げているのですか? –