Napisałem usługę w AngularJS, ale nie mogę jej zmusić do pracy z ziarnistym materiałem siewnym.Wstrzykiwanie serwisowe do kontrolera za pomocą AngularJS
Kod kontroler jest w następujący sposób:
/*function PhotoCtrl($scope, Photo) {
$scope.photos = Photo.query();
}*/
angular.module('myApp.controllers', []).
controller('PhotoCtrl', [function($scope,Photo) {
$scope.photos = Photo.query();
}])
.controller('MyCtrl2', [function() {
}]);
Należy pamiętać, że wypowiedziało się sekcja działa dobrze, ale chciałbym się nią trochę jak (zalecane) drugi sposób.
Błąd pojawia jest to, że zdjęcie jest niezdefiniowany, więc moje przypuszczenie byłaby moja metoda przekazywania (wstrzyknięcie) to jest źle, ale nie mogę dowiedzieć się, jak to zrobić poprawnie
O ile wiem, pierwsza metoda jest po prostu w porządku, wierzę, że to, co jest pokazane w oficjalnym poradniku dla przykładu. Czy masz jakieś źródła, które wskazują inaczej? –
"UWAGA: Wiele przykładów w dokumentacji pokazuje tworzenie funkcji w zasięgu globalnym.To tylko dla celów demonstracyjnych ......." z http://docs.angularjs.org/guide/dev_guide. mvc.understanding_controller wydaje się tak mówić. Nie zrozum mnie źle, myślę, że pierwszy jest łatwiejszy do odczytania, ale rozumiem, że odstępy między nazwami mogą być lepsze – Maarten
Jeśli usuniesz zawijanie nawiasów kwadratowych wokół definicji funkcji kontrolera '[funkcja ($ scope, Photo) {}]' ty Wszystko będzie dobrze, ale nie rób tego, jeśli planujesz zminimalizować kod. Więcej informacji na temat [wstrzykiwania zależności w kątowym tutaj] (http://docs.angularjs.org/guide/di) –