Hallo,
ich programmier jetzt schon einige Zeit in AngualrJS - aber keine "schwierigen" Sachen sondern nur MVC. Ich hab deshalb keine Ahnung, was dieser Code unten macht:
var currentUser = false;
...
function getCurrentUser() {
var deferred = $q.defer();
if(currentUser){
deferred.resolve(currentUser);
} else {
getCurrentUserFromAPI().success(function(data) {
if(data) {
currentUser = data;
return deferred.resolve(currentUser);
}
}).error(function(data) {
var token = authTokenService.getToken();
if(token) {
authTokenService.deleteToken();
}
return deferred.reject(data);
});
}
return deferred.promise;
}
Vor allem mit den $q- Statements komm ich gar nicht zu recht. Ich hab mir auch die Doku durchgelesen:
$q aber nicht sehr viel verstanden. Ich wäre sehr dankbar, wenn vielleicht jemand in kurzen worten beschreiben könnte, was obere Funktion macht.
Vielen Dank! Hannes