landers.angular
Version:
landers.angular
22 lines • 829 B
JavaScript
;angular.module('Landers.angular')
.factory('PromiseLoads', ['$q', function($q) {
return {
asyn:function(tasks, callback){
var promises = [];
angular.forEach(tasks, function(task){
var deferred = $q.defer();
var ajax = task(deferred);
if (ajax) ajax.success(function(){
deferred.resolve();
}).error(function(){
deferred.reject();
});
promises.push(deferred.promise);
});
$q.all(promises).then(function(){
// 曾在 initCreate() 调用无延时出过错
setTimeout(callback, 200);
});
}
};
}]);