Comment chaîner séquentiellement les promesses avec angularjs $ q?

Dans la promesse de la bibliothèque Qvous pouvez effectuer les opérations suivantes de façon séquentielle de la chaîne de promesses:

var items = ['one', 'two', 'three'];
var chain = Q();
items.forEach(function (el) {
  chain = chain.then(foo(el));
});
return chain;

cependant, la suivante ne fonctionne pas avec $q:

var items = ['one', 'two', 'three'];
var chain = $q();
items.forEach(function (el) {
  chain = chain.then(foo(el));
});
return chain;

source d'informationauteur redgeoff | 2014-09-06