与你相遇好幸运,async解决循环回调问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了与你相遇好幸运,async解决循环回调问题相关的知识,希望对你有一定的参考价值。

由于使用的sailsjs框架,用的是sailsjs自身带的ORm(就是waterline),ORM的默认数据库的返回值在回调里面。

>

arg是一个数组

count用来计数用

tmpArr临时存放变量

假设是Users模型根据arg数组里面的u_number来查询

查询后需要的结果在properties[‘u_hometown‘],然后把结果放在新的数组里面

最后循环结束后正好得到一个正确的tmpArr

var count = 0;
var tmpArr = [];
async.whilst(
  function() { return count < arg.length; },
  function(callback) {
    Users.find({u_number:arg[count].u_number}).exec(function(err,resul){
      err && sails.log.error(err);
      if(resul.length == 0){
        sails.log.error(‘notfound‘);
        var tmp = "";
      }else{
        var tmp =  resul[0].properties[‘u_hometown‘]
      }
      arg[count][‘u_homwtown‘] = tmp;
      tmpArr.push(arg[count]);
      count++;
      callback(null, count);
    });
  },
  function (err, result) {
    err && sails.log.error(err);
    console.dir(result);
    console.dir(tmpArr);
  }
);

 

以上是关于与你相遇好幸运,async解决循环回调问题的主要内容,如果未能解决你的问题,请参考以下文章

与你相遇好幸运,毕业

与你相遇好幸运,Tippecanoe用法

与你相遇好幸运,Waterline初遇

与你相遇好幸运,Sails.js安装

与你相遇好幸运,aglio写接口文档

与你相遇好幸运,Linux常用命令