Difference between $ q.when and $ q.defer in angularJS

I see angularJS files, where in some places the reviewer commented on these 3 lines:

var deferred = $q.defer();
deferred.resolve(BrandList);
return deferred.promise;

and replace with this:

return $q.when(BrandList);

I would like to understand the difference between the two. Both serve the same purpose? What should i use when?

+4
source share
2 answers

Ben Nadal does a great job explaining this here .

According to him:

$q.when() , ; , , "" . , $q.when() . , $q.when() , .

, , promises, promises, , , , , .

+4

$q.defer() , , promises . deferred.resolve() deferred.reject(), , deferred.notify().

$q.when() , . EDIT promises, , . . .

$q.when() .

0

All Articles