Я создал приложение на основе ng-шаблона. Все работает нормально. Однако, теперь я приближаюсь к развертыванию, я хочу скомпилировать и минимизировать код. Это достаточно сложно, используя компиляцию grunt, но, конечно, приложение ломается, когда его минимизируют. Я не ожидал ничего меньше!Угловой контроллер minification
Я впрыскивается зависимости в мои контроллеры так:
var appCtrl = app.controller('AppCtrl', function AppCtrl($scope, $rootScope, helpService, userService, menuService, $location) {... body ...});
appCtrl.$inject = ['$scope', '$rootScope', 'helpService', 'userService', 'menuService', '$location'];
Я также попытался это следующим образом:
var appCtrl = app.controller('AppCtrl', ['$scope', '$rootScope', 'helpService', 'userService', 'menuService', '$location',
function AppCtrl($scope, $rootScope, helpService, userService, menuService, $location) {... body ...}]);
Все, что я когда-нибудь ошибка, как это: Error: Unknown поставщик : aProvider < - a
Я также просмотрел свои услуги и ввел зависимости аналогично второму методу выше, но затем начал получать ошибок в программе, даже если она не была уменьшена. Это говорило мне, что у $ q нет метода defer()!
app.factory('checkAuth', ['$q', '$location', '$filter', '$rootScope', function ($q, $location, $filter, $rootScope) {...body...}]);
Мой вопрос: что мне не хватает? Правильно ли я делаю инъекции зависимостей? Есть ли где-то еще DI?
Спасибо!
EDIT: Просто нашел это: Angular.module minification bug
Он не полностью устранило проблему ... теперь я получаю сообщение об ошибке:
TypeError: Object #<error> has no method 'slice'
, но по крайней мере это от Error: Unknown провайдер: aProvider < - a :-)
2-й и 3-й позиции действительны. Включили ли вы модуль ngResource в своем приложении? –