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?
Ben Nadal does a great job explaining this here .
According to him:
$q.when() , ; , , "" . , $q.when() . , $q.when() , .
, , promises, promises, , , , , .
$q.defer() , , promises . deferred.resolve() deferred.reject(), , deferred.notify().
$q.defer()
deferred.resolve()
deferred.reject()
deferred.notify()
$q.when() , . EDIT promises, , . . .
$q.when()
$q.when() .