Мини-код преобразует ваш код во что-то более легкое и быстрое скачивание. Вам просто нужно сделать что-то вроде объявления об инъекции зависимостей, прежде чем вставлять его в функцию и использовать ее, НО только в том случае, когда вам нужно будет использовать мини-классификацию.
Ваша функция требует «$ scope» и «greeter». Если вы пишете так:
someModule.controller('MyController', function($scope, greeter) { // ...
});
..и затем использовать минификация, контроллер будет обратиться:
someModule.controller('MyController',function(a,b) { // ...
});
..то контроллер «MyController» не поймет, где, черт возьми " $ scope "и" greeter ", он будет видеть только параметр" a "и параметр" b ".
По этой причине лучше всего использовать массив:
someModule.controller('MyController', ['$scope', 'greeter', function($scope, greeter) { // ...
}]);
..и затем использовать минификация:
someModule.controller('MyController', ['$scope', 'greeter', function(a, b) { // ...
}]);
Как вы можете видеть, первый и второй элемент массива не преобразованный, и javascript будет знать, что «a» и «b» - это элементы внутри массива для ввода функции.
Обратите внимание, что если вы пишете что-то вроде:
someModule.controller('MyController', ['$scope', '$log', function($log, $scope) {
console.log($scope);
}]);
Вы будете иметь журнал консольных $ журнала! Это потому, что положение и только вопросы положения, можно назвать:
someModule.controller('MyController', ['$scope', '$log', function(Donald, Duck) {
console.log(Duck);
}]);
Он пошлет вас обратно журнал консольных $ бревенчатого элемента.
minification/uglify может сломать код в противном случае (но вы можете настроить его так, как это не делает :)) –