angularjs - Angular 路线无限循环

标签 angularjs infinite-loop routes

出于某种原因,当我的路由中有一个动态属性并访问该页面时,我陷入了一个无限循环,该页面将不断地请求自身。

.config(["$routeProvider", "$locationProvider", function($routeProvider, $locationProvider)
{
    $locationProvider.html5Mode(true);

    $routeProvider.when("/", {
        templateUrl: "pages/index.html",
        controller: "IndexCtrl"
    }).when("/listhome", {
        templateUrl: "pages/listhome.html",
        controller: "ListHomeCtrl"
    }).when("/profile", {
        templateUrl: "pages/profile.html",
        controller: "ProfileCtrl"
    }).when("/newlist", {
        templateUrl: "pages/newlist.html",
        controller: "NewListCtrl"
    }).when("/userlists/:id", {
        templateUrl: "pages/userlists.html",
        controller: "UserListsCtrl"
    }).otherwise({
        redirectTo: "/"
    });

我正在查看的路线是/userlists/:id 路线。该路线的 Controller 是-
TopTenApp.controller("UserListsCtrl", ["$scope","$routeParams", function($scope, $routeParams)
{
    console.log($routeParams);
    $scope.lists = [];
}]);

当我访问/userlists/9 我看到 -
Object {id: "9"}

每 3 秒记录一次,页面卡住。只要位置后面有正斜杠(“/userslists/”而不是“/userlists”),这似乎就会发生。

有谁知道这是什么原因?

最佳答案

愚蠢的我,我意识到了这个问题。我想这是有道理的,但是当页面深度为多个“目录”时,模板 url 前面需要有一个正斜杠。

.config(["$routeProvider", "$locationProvider", function($routeProvider, $locationProvider)
{
    $locationProvider.html5Mode(true);

    $routeProvider.when("/", {
        templateUrl: "/pages/index.html",
        controller: "IndexCtrl"
    }).when("/listhome", {
        templateUrl: "/pages/listhome.html",
        controller: "ListHomeCtrl"
    }).when("/profile", {
        templateUrl: "/pages/profile.html",
        controller: "ProfileCtrl"
    }).when("/newlist", {
        templateUrl: "/pages/newlist.html",
        controller: "NewListCtrl"
    }).when("/userlists/:id", {
        templateUrl: "/pages/userlists.html",
        controller: "UserListsCtrl"
    }).otherwise({
        redirectTo: "/"
    });
}]);

希望这可以帮助其他有类似问题的人。

关于angularjs - Angular 路线无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21356671/

相关文章:

javascript - AngularJS : Scope value changing, 但并不总是应用 ng-class

javascript - 为什么 Angular 摘要循环在 UI 事件、$timeout 和 $http 上不同?

python - 如何运行多个 while 循环并在每次循环后关闭?

node.js - 使用 Express 和 Nodejs 进行路由时出现 404 错误

ruby-on-rails - Rails route 的 myapp.com/@username url

javascript - AngularJS:针对特定的 "ID"进行 ng-repeat?

javascript - 从 Chrome 扩展内容脚本接收数据的 AngularJS 服务有时不会更新 View

java - 为什么这会无限/多次显示输出?

python - 我用Python编写了一段代码,即使我使用break语句并继续,它仍然会进入Python :的无限循环

ruby-on-rails - 如何替换 Ruby on Rails 中的默认 url/path REST 助手?