javascript - Angular .js :117 RangeError: Maximum call stack size exceeded

标签 javascript angularjs

我正在开发我的第一个 angular.js,但我的应用程序出现错误,它一直在循环。我认为错误出在我的 ng-route 配置中,但我不知道如何解决它。

myapp.js

var app = angular.module('myapp', ['ngRoute']);

 app.config(function($routeProvider) {
            $routeProvider.

            when('/', {
              templateUrl: 'index.html',
              controller: 'mainController'

            }).

            when('/main', {
               templateUrl: 'main.html',
               controller: 'mainController'
            }).

            when('/register', {
               templateUrl: 'register.html',
               controller: 'authController'
            }).

            when('/update', {
               templateUrl: 'update.html',
               controller: 'authController'
            }).

            otherwise({
               redirectTo: '/'
            });
});


app.controller('mainController', function($scope){

});

app.controller('authController', function($scope){


  $scope.update = function(){

  };

  $scope.register = function(){

  };
});

index.html

        <div ng-view> </div>

堆栈错误。

angular.js:117 RangeError: Maximum call stack size exceeded
        at ja (http://localhost:3000/javascripts/angular.js:80:376)
        at n (http://localhost:3000/javascripts/angular.js:66:28)
        at g (http://localhost:3000/javascripts/angular.js:58:305)
        at g (http://localhost:3000/javascripts/angular.js:58:322)
        at g (http://localhost:3000/javascripts/angular.js:58:322)
        at http://localhost:3000/javascripts/angular.js:57:455

        at http://localhost:3000/javascripts/angular-route.js:866:15
        at http://localhost:3000/javascripts/angular.js:57:445
        at http://localhost:3000/javascripts/angular.js:62:281
        at update (http://localhost:3000/javascripts/angular-route.js:839:13)(anonymous function) @ angular.js:117(anonymous function) @ angular.js:89ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820
    11angular.js:117 RangeError: Maximum call stack size exceeded
        at Object.error (http://localhost:3000/javascripts/angular.js:117:212)
        at http://localhost:3000/javascripts/angular.js:89:505
        at ja (http://localhost:3000/javascripts/angular.js:80:372)
        at n (http://localhost:3000/javascripts/angular.js:66:28)
        at g (http://localhost:3000/javascripts/angular.js:58:305)
        at g (http://localhost:3000/javascripts/angular.js:58:322)
        at g (http://localhost:3000/javascripts/angular.js:58:322)
        at http://localhost:3000/javascripts/angular.js:57:455
        at http://localhost:3000/javascripts/angular-route.js:866:15
        at http://localhost:3000/javascripts/angular.js:57:445(anonymous function) @ angular.js:117(anonymous function) @ angular.js:89ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820
    angular.js:117 RangeError: Maximum call stack size exceeded
        at Object.error (http://localhost:3000/javascripts/angular.js:117:212)
        at http://localhost:3000/javascripts/angular.js:89:505
        at ja (http://localhost:3000/javascripts/angular.js:80:372)
        at n (http://localhost:3000/javascripts/angular.js:66:28)
        at g (http://localhost:3000/javascripts/angular.js:58:305)
        at g (http://localhost:3000/javascripts/angular.js:58:322)
        at g (http://localhost:3000/javascripts/angular.js:58:322)
        at http://localhost:3000/javascripts/angular.js:57:455
        at http://localhost:3000/javascripts/angular-route.js:866:15
        at http://localhost:3000/javascripts/angular.js:57:445 <!-- ngView:  -->(anonymous function) @ angular.js:117(anonymous function) @ angular.js:89ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820ja @ angular.js:80n @ angular.js:66g @ angular.js:58g @ angular.js:58g @ angular.js:58(anonymous function) @ angular.js:57(anonymous function) @ angular-route.js:866(anonymous function) @ angular.js:57(anonymous function) @ angular.js:62update @ angular-route.js:839(anonymous function) @ angular-route.js:820
    10angular.js:117 RangeError: Maximum call stack size exceeded
        at RegExp.[Symbol.replace] (native)
        at RegExp.[Symbol.replace] (native)
        at String.replace (native)
        at cb (http://localhost:3000/javascripts/angular.js:29:523)
        at xa (http://localhost:3000/javascripts/angular.js:87:188)
        at x (http://localhost:3000/javascripts/angular.js:60:1)
        at s (http://localhost:3000/javascripts/angular.js:58:402)
        at s (http://localhost:3000/javascripts/angular.js:59:55)
        at s (http://localhost:3000/javascripts/angular.js:59:55)
        at s (http://localhost:3000/javascripts/angular.js:59:55) <!-- ngView:  -->

最佳答案

问题出在以下代码上:

        when('/', {
          templateUrl: 'index.html',
          controller: 'mainController'

        }).

还有index.html<div ng-view> </div> 。所以 AngularJS 尝试用 index.html 替换 ng-view这就像无限递归一样持续不断。

您可以做的是添加 home.html

 <div>Home page</div>

并将路由替换为:

    when('/', {
      templateUrl: 'home.html',
      controller: 'mainController'

    }).

关于javascript - Angular .js :117 RangeError: Maximum call stack size exceeded,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38780488/

相关文章:

javascript - 使用 Javascript 和 JQuery 获取控件的类型

javascript - 使用 AngularJS 在服务/工厂与 Controller 中解决 promise

javascript - 无法让 Jasmine 测试成功调用注入(inject)的服务

javascript - 格式化动态 json 数组

javascript - 崩溃转储丢失的 nodewebkit

javascript - Vue 元素类转换

javascript - 如何获取 Angular ui 树中某个项目的键值或迭代?

javascript - React.js 语法错误

javascript - 循环遍历一个json,找到所有具有特定首字母的键并将其放入另一个json中

javascript - $scope 不从表单输入中获取字符串 - AngularJS,JS