To jest pytanie typu noobie:
Gram z aplikacją ziarnku Angular i próbuję napisać kontroler, ale nie mam szczęścia uzyskania dostępu do zakresu $ (i jakiejkolwiek innej zależności).
angular.module("myApp.controllers", []).
controller("mainCtrl", [function( $scope, $http ) {
$http.get("config/configuration.json").success( function( data ) {
$scope.gametitles = data.gametitles;
$scope.environments = data.environments;
$scope.playermanagerServer = data.playermanagerServer;
});
$scope.gametitle = $scope.gametitles[0];
$scope.environment = $scope.environments[0];
}])
Jeśli włamie się kod, zarówno $ http, jak i $ scope są niezdefiniowane. Jak uzyskać do nich dostęp?
Z góry dziękuję
Odpowiedzi:
2 dla odpowiedzi № 1Myślę, że problem tkwi w składni deklaracji kontrolera. Próbować controller("mainCtrl", ["$scope", "$http", function ($scope, $http) { ... controller code ...}]);
możesz chcieć sprawdzić dokumentację A dla wtyczki zależności w kontrolerach tutaj
0 dla odpowiedzi nr 2
Lub, zakładając, że nie "ugniatasz" swojego kodu, możesz po prostu użyć prostszego formowania wtryskowego:
kontroler ("mainCtrl", funkcja ($ scope, $ http) {})
(zwróć uwagę, że funkcja nie jest członkiem tablicy, ale jest przekazywana bezpośrednio)