我有一个无限制的应用程序但是当使用uglify来组合angular,angular_routes和我的script.js时,我得到了一个注入器错误。我已经使用$ inject like对控制器进行了内联注释 这样:
var app = angular.module('app', ['ngRoute']);
mainController.$inject = ['$scope', '$http', '$window', '$location'];
app.controller('mainController', mainController);
function mainController($scope, $http, $window, $location) {
$window.ga('send', 'pageview', { page: $location.url() });
}
我是否必须对ng-routes做任何事情?还是app.run?这是代码:
app.config(function($routeProvider) {
$routeProvider
// route for the home page
.when('/', {
templateUrl : 'pages/home.html',
controller : 'mainController'
})
app.run part:
app.run(function ($rootScope, $location) {///
如果您想看到完整代码,请点击此处: http://stephenbreighner.com/script.js
感谢
答案 0 :(得分:2)
Angular的依赖注入基于参数名称工作,例如$scope
。当缩小时,它将被称为一些不可读的名称,如b
,因此angular不能查找应该注入的内容。要解决此问题,请使用数组表示法:
app.config(["$routeProvider", function($routeProvider) {
$routeProvider
// route for the home page
.when('/', {
templateUrl : 'pages/home.html',
controller : 'mainController'
})
}])
和
app.run(["$rootScope", "$location", function ($rootScope, $location) {///