Advertisement
Guest User

Untitled

a guest
May 4th, 2016
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.55 KB | None | 0 0
  1. // NB: This is made using angular's $q, but this applies to anything else
  2. promiseChain = function(array, passedPromise) {
  3. let chain = $q((resolve, reject) => resolve());
  4. for (let elem of array)
  5. chain = chain.then(_ => passedPromise(elem));
  6. return chain;
  7. };
  8.  
  9. // This returns a timeout wrapped in a promise
  10. let testFn = function(s) {
  11. return $timeout(function() {
  12. console.log(s);
  13. }, 500);
  14. };
  15.  
  16. let promise = makePromiseChain([1,2,3,4,5,6,7,8,9], testFn);
  17. promise.then(_ => console.log('finished'));
  18.  
  19. $q((resolve, reject) => resolve())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement