Ich bin immer noch neu zu eckig so leid, wenn meine Frage ein wenig ist ... Ich habe einen Dienst erstellt, die einige REST-API aufrufen und ich es mit Versprechungen implementiert.
Ich bin im Moment mit diesem Versprechen Rückkehr Liste von Daten an den Controller und steckte es in $scope
.
Ich möchte, dass, wenn ich Daten in dieser Funktion empfange auch retrieved Daten zu
Service, so dass ich den Dienst nicht erneut aufrufen muss, wenn ich bereits Daten habe.Service-Variable zugewiesene Daten, aber es ist immer undefiniert, wenn auf zugegriffen
app.service("MyService", function ($http, $q) {
this.OrignalDataFromService = null;
return {
var deferred = $q.defer();
...
deferred.resolve(data);
this.OrignalDataFromService = data;
return deferred.promise;
}
}
Problem dabei ist, dass, wenn ich OrignalDataFromService
vom Controller zugreifen es immer undefined
ist (in Versprechen, das ich bekommen Daten es nur variable Service, der nicht definiert ist), warum ist das so?
Ich verstehe nicht wirklich, wo Modell in eckigen App residieren sollte.
Ist es $scope
Variable in Controller und Dienste sind nur hier, um uns zu ermöglichen, Daten von irgendwo zu bekommen, oder sollte Modell im Dienst sein (als Variable)?
Können Sie zeigen Sie Ihre Controller-Code? Wie greifen Sie auf die Daten vom Service in Ihrem Controller zu? –
Der Code in der Frage ist nicht gültig JS. – estus