I've followed all the instructions I can find for fixing minification, e.g.
var MyController = function(renamed$scope, renamedGreeter) { ... } MyController.$inject = ['$scope', 'greeter'];
and
someModule.factory('greeter', ['$window', function(renamed$window) { ...; }]);
yet angular refuses to work still. It always throws the error "Unknown provider: eProvider"
Here are my two attempts to get it working... can anyone help?
https://github.com/jemminger/angular-test1
https://github.com/jemminger/angular-test2
They've already had the assets precompiled and development mode is configured to work as production, so you should just be able to "rails s" to see it (not) work.
Found it! They never said to apply the injection fixes to services too... The solution is to change this:
angular.module('itemServices', ['ngResource']). factory('Item', function($resource){ return $resource('items/:item_id.json', {}, { query: {method:'GET', params:{ item_id: 'all' }, isArray:true} }); });
to this:
angular.module('itemServices', ['ngResource']). factory('Item', ['$resource', function($resource){ return $resource('items/:item_id.json', {}, { query: {method:'GET', params:{ item_id: 'all' }, isArray:true} }); }]);
Remember, to also use DI on controllers within directives. Took me hours... CS example:
wrong:
controller: ($scope) -> $scope.closeModal = -> ModalService.close()
right:
controller: ["$scope" ($scope) -> $scope.closeModal = -> ModalService.close() ]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With