Angularjs 这条路线没有指向任何东西
所以,我正在学习如何使用Angulars路由,遵循在线教程,但我似乎不知道哪里出了问题。我有以下代码:Angularjs 这条路线没有指向任何东西,angularjs,ngroute,Angularjs,Ngroute,所以,我正在学习如何使用Angulars路由,遵循在线教程,但我似乎不知道哪里出了问题。我有以下代码: var app = angular.module('gamersplane', ['controllers', 'ngCookies', 'ngRoute']); app.config(['$routeProvider', function ($routeProvider) { $routeProvider.when('/pms/:box?', { controller
var app = angular.module('gamersplane', ['controllers', 'ngCookies', 'ngRoute']);
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/pms/:box?', {
controller: 'pmList'
}).when('/pms', {
controller: 'pmList'
}).otherwise({
controller: 'pmList'
});
}])
var controllers = angular.module('controllers', []);
controllers.controller('pmList', function ($scope, $cookies, $http, $routeParams) {
console.log($routeParams);
});
然而,无论我做什么,控制器都不会被击中。我在路由器中有
否则
,所以如果其他所有操作都失败,它不应该命中吗?是的,否则它会命中,但您只能在其中定义重定向路径,重定向路径将告诉url和控制器为$route设置。当前:-
redirectTo: '/pms'
您需要为每条路线添加一个模板:
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/pms/:box?', {
controller: 'pmList',
template: 'test.html'
}).when('/pms', {
controller: 'pmList',
template: 'test.html'
}).otherwise({
controller: 'pmList',
template: 'test.html'
});
}])
squiroids关于其他方面的建议是正确的,但您不会在测试应用程序中看到任何更改 路由用于在应用程序的各个区域之间导航。你可以有一个有两条路线的应用程序:显示PM列表的PM和查看特定PM框的PM/:box。ngRoute的主要任务是用给定模板替换应用程序(ng视图)中的占位符。如果不在各个路线上使用模板,$routeProvider将无法按预期导航
假设您有两个区域视图(pmBox.html和pmList.html),您可以像这样配置$routeProvider zu设置路由:您的
否则
指向任何地方,请尝试否则({redirectTo:'/pms'})代码>但即使我转到/pms或/pms/outbox,它也不会使控制器发热。我不确定哪里出了错。