http://imgur.com/xTFVJTA是我错误的图片。
dicym.js
var app = angular.module('diycm', ['ngRoute', 'LocalStorageModule']);
// setup the routing
app.config(function ($routeProvider) {
$routeProvider
.when('/home', {
templateUrl: 'views/home.html',
controller: 'homeController',
title: 'Home'
})
.when('/projects', {
templateUrl: 'views/projects.html',
controller: 'homeController',
title: 'Projects'
})
.when('/singleProject', {
templateUrl: 'views/singleProject.html',
controller: 'homeController',
title: 'Project Details'
});
$routeProvider.otherwise({ redirectTo: "/home" });
});
// Controls the rootscope
app.run(function ($rootScope, $route) {
$rootScope.$on("$routeChangeSuccess", function (currentRoute, previousRoute) {
//Change page title, based on Route information
$rootScope.title = $route.current.title;
});
});
homeController.js
app.controller('homeController', function ($scope, $http) {
$scope.message = 'Everyone come and look!';
});
sidebarController.js
app.controller('sidebarController', function ($scope, $location) {
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
});
的index.html
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.2/angular.min.js" type="text/javascript"></script>
<script src="https://code.angularjs.org/1.4.5/angular-route.js" type="text/javascript"></script>
<script src="js/diycm.js"></script>
<script src="js/angular-local-storage.min.js"></script>
<script src="js/controllers/sidebarController.js"></script>
<script src="js/controllers/homeController.js"></script>
有谁知道可能导致此错误的原因是什么?角度和文档/过去问题的新功能并没有多大帮助。
答案 0 :(得分:2)
为每个控制器注入依赖项。
1)
app.controller('homeController', ['$scope','$http',function ($scope, $http) {
$scope.message = 'Everyone come and look!';
}]);
和
app.controller('sidebarController',['$scope','$location',function ($scope, $location) {
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
}]);
2)
app.controller('homeController',homeController);
homeController.$inject = ['$scope','$http'];
function homeController($scope, $http) {
$scope.message = 'Everyone come and look!';
}]);
和
app.controller('sidebarController',sidebarController);
sidebarController.$inject = ['$scope','$location'];
function sidebarController($scope, $location) {
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
}]);