Ich habe einen Controller und Fabrik wie unten definiert.Eckiges js, das undefiniertes Objekt von der Fabrik zurückbringt
myApp.controller('ListController',
function($scope, ListFactory) {
$scope.posts = ListFactory.get();
console.log($scope.posts);
});
myApp.factory('ListFactory', function($http) {
return {
get: function() {
$http.get('http://example.com/list').then(function(response) {
if (response.data.error) {
return null;
}
else {
console.log(response.data);
return response.data;
}
});
}
};
});
Was mich verwirrt ist, dass ich den Ausgang nicht definiert von meinem Controller, und dann die nächste Zeile der Ausgabe der Konsole ist meine Liste von Objekten aus meiner Fabrik. Ich habe auch versucht
myApp.controller('ListController',
function($scope, ListFactory) {
ListFactory.get().then(function(data) {
$scope.posts = data;
});
console.log($scope.posts);
});
meinen Controller zu
Ändern Aber ich erhalte den FehlerTypeError: Cannot call method 'then' of undefined
Hinweis: ich diese Informationen fand eine Fabrik durch http://www.benlesh.com/2013/02/angularjs-creating-service-with-http.html