I have the following code: http://jsfiddle.net/kyy4ey10/4/
$scope.count = 0;
function getActiveTasks() {
var deferred = $q.defer();
setTimeout(function() {
$scope.count++;
deferred.resolve();
},1000)
return deferred.promise;
}
// i want to put this inside the function, but it doesn't work
var deferred = $q.defer();
function callPromise() {
getActiveTasks().then(function(){
if($scope.count < 5){
callPromise();
}
else{
deferred.resolve()
}
})
return deferred.promise;
}
callPromise().then(function(){
$scope.count = "done"
});
If I put:
var deferred = $q.defer();
inside the callPromise()
function, $scope.count
doesn't get resolved to "done".
How can I change how I've written these two functions and then call callPromise()
so I don't have to put var deferred = $q.defer();
outside?