Mam been told, który powinienem używać składni app.controller
, w celu wsparcia minifikacji.
Przepisywanie próbki (samouczek) przykładem i stwierdziliśmy, że nie mogłem zmusić go do pracy:
use 'strict';
/* Minifiable solution; which doesn't work */
var app = angular.module('myApp', ['ngGrid']);
// phones.json: http://angular.github.io/angular-phonecat/step-5/app/phones/phones.json
app.controller('PhoneListCtrl', ['$scope', '$http', function ($scope, $http) {
$http.get('phones/phones.json').success(function (data) {
$scope.phones = data;
});
$scope.orderProp = 'age';
}]);
/* Alternate [textbook] solution; which works */
function PhoneListCtrl($scope, $http) {
$http.get('phones/phones.json').success(function (data) {
$scope.phones = data;
});
$scope.orderProp = 'age';
}
PhoneListCtrl.$inject = ['$scope', '$http'];
<body ng-app="myApp" ng-controller="PhoneListCtrl">
{{phones | json}}
</body> <!-- Outputs just an echo of the above line, rather than content -->
Co muszę zmienić?
O ile wiem, można użyć drugą wersję nawet do minimalizowania, ze względu na linii $ inject - który mówi angularjs prawidłowa bez zmian nazwy dwóch parametrów. – flaschenpost
To działa dla mnie. Jaki masz błąd? – DanEEStar