Javascript Angular.js-控制器不执行索引,适用于其余模板
我有一个奇怪的问题-我使用Angular的ngRoute进行应用。 我有不同的模板控制器,例如: routes.js:Javascript Angular.js-控制器不执行索引,适用于其余模板,javascript,angularjs,controller,ngroute,Javascript,Angularjs,Controller,Ngroute,我有一个奇怪的问题-我使用Angular的ngRoute进行应用。 我有不同的模板控制器,例如: routes.js: angular.module('PokeApp', ['ngRoute']) .config(function($routeProvider){ $routeProvider .when('/', { templateUrl: '../templates/template-index.html', controller: 'Index
angular.module('PokeApp', ['ngRoute'])
.config(function($routeProvider){
$routeProvider
.when('/', {
templateUrl: '../templates/template-index.html',
controller: 'IndexController'
})
.when('/products', {
templateUrl: '../templates/template-products.html',
controller: 'ProductsController'
})
.when('/events', {
templateUrl: '../templates/template-events.html',
controller: 'EventsController'
})
.otherwise({ redirectTo: '/' });
index.html中包含的控制器如下所示:
<!-- Scripts -->
<script src="js/angular.min.js"></script>
<script src="js/angular-route.min.js"></script>
<script src="js/routes.js"></script>
<script src="js/controllers/controller-index.js"></script>
<script src="js/controllers/controller-products.js"></script>
<script src="js/controllers/controller-events.js"></script>
controller-products.js:
angular.module('PokeApp')
.controller('ProductsController', function($scope) {
// again, for testing
console.log("hi");
..
});
但奇怪的是,当我进入“/”页面时,我没有将控制器日志发送到控制台。没有输入错误,因为如果我将控制器的名称更改为错误的名称,我会在控制台中得到错误
但当我去看产品时,我得到了预期的“嗨”
我检查了我能想到的一切——打字错误、错误的位置、堆栈溢出线程。我只是不明白为什么索引控制器拒绝工作,而其他控制器(我还有一些)按预期工作
有人能帮我弄清楚吗?谢谢您的时间。您是否可以尝试将其他情况添加到路线提供商:
否则({
重定向到:'/'
});
您可以这样指定默认路线
$routeProvider
.when('/index', {
templateUrl: '../templates/template-index.html',
controller: 'IndexController',
})
.otherwise({ redirectTo: '/index' });
但我建议您从项目一开始就使用。
它支持普通ngRoute所能做的一切以及许多额外的功能。查看浏览器开发工具网络,查看模板请求是否失败。文件正在成功接收,我选中了。我忘了在这里显示该部分,但是。否则在我的文件中。我会检查UI路由器,谢谢!是的,我忘了在这里显示那部分,但是。否则在我的档案里
$routeProvider
.when('/index', {
templateUrl: '../templates/template-index.html',
controller: 'IndexController',
})
.otherwise({ redirectTo: '/index' });