我在main angular.js文件中有以下设置
var application = angular.module('application', [...]).config([..., function(...) {
//Setup routes
$routeProvider...
}]).
directive('applicationDirective', function() {
...
}).
controller('main-controller', ['$scope', function($scope) {
...
}]).
run(['$rootScope', '$location', function($rootScope, $location) {
//Empty
}]);
目前,该应用程序包含两个页面,即登录页面和仪表板页面。 $routeProvider
配置为在$config
指令中为每个路由加载特定视图和控制器。
如果没有.run(...);
功能,这一切都可以正常工作。
当我将.run(...)函数添加到结尾时,即使正文为空,似乎$ routeProvider不会立即运行,初始视图也不会加载到'/ dashboard '或'/ login'但是如果我打开这些页面的链接一旦打开就可以了。
有没有人知道为什么我在使用运行块时没有正确加载视图和控制器?
答案 0 :(得分:0)
尝试按此顺序使用:
var application = angular.module('application', [...])
.config([..., function(...) {
//Setup routes
$routeProvider...
}])
.run(['$rootScope', '$location', function($rootScope, $location) {
//Empty
}]);
angular.module('application')
.directive('applicationDirective', function() {
...
})
.controller('main-controller', ['$scope', function($scope) {
...
}]);