So ziemlich habe ich einen Dienst, der Funktionen für einige REST-Methodenaufrufe über den $ http-Dienst in AngularJS enthält. Diese Methoden werden dann im Controller aufgerufen und aufgerufen.
Wenn die Methode über den Controller aufgerufen wird, sind die Daten, die im Service auf der Konsole ausgegeben werden, das erwartete JSON-Objekt. Aber sobald diese Funktion Daten an den Controller zurückgibt, wird sie undefiniert.
Ich bin mir nicht sicher, was der Grund dafür ist, und würde gerne einen Einblick in das, warum dies passiert, hat es mit Scoping oder Garbage Collection zu tun?
Danke!
hier die So-Service 'Hub'
this.getAllHubs = function() {
$http({
method: 'GET',
url: 'https://****.com',
}).then(function successCallback(response) {
console.log('In hub.js ' + JSON.stringify(response.data));
this.hubs = response.data;
return response.data;
}, function errorCallback(response) {
// Error response right here
});
};
, um die erste Ausgabe der Konsole druckt das Objekt richtig ist Code der Steuerung und hier
erwartet
app.controller('HubCtrl', HubCtrl);
HubCtrl.$inject = ['$scope','hub'];
function HubCtrl($scope,hub) {
$scope.hubs = hub.getAllHubs();
console.log('In ctrl ' + $scope.hubs);
$scope.addHub = function(_hub) {
console.log('In Ctrl ' + _hub);
hub.addHub(_hub);
};
}
, dass es mein Freund war, ich danke Ihnen für die Zeit nehmen, um zu helfen ich, ich schätze es wirklich! Genießen Sie den Rest Ihrer Nacht/Tag! – Michael