parse.com - Parse : Multiple queries with an array returning only when finished -


trying cloudcode out first time , loving it.

i writing ios app passes phone numbers cloudcode see if phone number has app.

the problem firing success block before queries finish. guessing need know how many queries there , work out if on last one? seen .then function?

parse.cloud.define("processnumbers", function(request, response) {      parse.cloud.usemasterkey();     var phonenumbers = request.params.phonenumbers;      phonenumbers.foreach(function(entry) {          var query = new parse.query(parse.user);         //query.equalto("username", entry);          query.find({             success: function(results) {                 console.log("has app");              },             error: function() {                 console.log("not found");               }         });           console.log(entry);      });      response.success(phonenumbers); }); 

you use promise perform task in series or parallel.

ref. promises in parallel, promises in series

the following parallel version use parse.promise.when. promise when resolved when of input promises resolved.

parse.cloud.define("processnumbers", function(request, response) {      parse.cloud.usemasterkey();     var phonenumbers = request.params.phonenumbers;     var promises = [];      phonenumbers.foreach(function(entry) {          var query = new parse.query(parse.user);         //query.equalto("username", entry);          promise.push(             query.find().then(function(results) {                 console.log("has app");              }, function() {                 console.log("not found");              });         )           console.log(entry);      });     return parse.promise         .when(promises)         .then(function() {             response.success(phonenumbers);         });      response.success(phonenumbers); }); 

p.s. not tested yet, use @ own risk


Comments

Popular posts from this blog

java - Oracle EBS .ClassNotFoundException: oracle.apps.fnd.formsClient.FormsLauncher.class ERROR -

c# - how to use buttonedit in devexpress gridcontrol -

nvd3.js - angularjs-nvd3-directives setting color in legend as well as in chart elements -