Node.js 如果回调错误,请更改异步序列顺序

Node.js 如果回调错误,请更改异步序列顺序,node.js,Node.js,有没有更聪明的方法来处理异步的问题?如果数据存在,则应进行刷新, 否则,应生成一个刷新的 谢谢。您可以使用三步瀑布,而不是使用系列,只需在第二步中检查用户即可 async.series([ function(callback){ data.exists(user, callback) }, function(callback){ period.refresh(user, callback)

有没有更聪明的方法来处理异步的问题?如果数据存在,则应进行刷新, 否则,应生成一个刷新的


谢谢。

您可以使用三步瀑布,而不是使用系列,只需在第二步中检查用户即可

    async.series([
        function(callback){
            data.exists(user, callback)
        },
        function(callback){
            period.refresh(user, callback)
        }
    ],
    function(err, results){
        if(err) {

            async.series([
                function(callback){
                    data.generate(user, callback)
                },
                function(callback){
                    period.refresh(user, callback)
                }
            ])

        }
    })
async.waterfall([
  function(callback) {
    /* get user */
    callback(null, user);
  },
  function(user, callback) {
    if(user) return callback(null, user); // return early if user exists
    /* create user */
    callback(null, user);
  },
  function(user, callback) {
    /* refresh user */
    callback();
  }
  ],
  function(err) {
    if(err) throw err;
    /* process done successfully */
  }
);