angular / batarang

AngularJS WebInspector Extension for Chrome
MIT License
2.43k stars 338 forks source link

Elements -> $scope shows "Maximum call stack size exceeded" #301

Closed BairDev closed 8 years ago

BairDev commented 8 years ago

As is has been mentioned in this SO comment, the Baterang tool in the debugger tab Elements -> $scope sometimes shows not that useful informations like these:

message: "Maximum call stack size exceeded"
stack: (...)
get stack: stack()
set stack: stack()
__proto__: Error

It is quite hard to reproduce and I guess, that a JSFiddle or Plunker won't help much, because the environment (for the debugger and the Batarang plugin) is very different.

We have a normal Web Application and are using Angular 1.4.7. We also use the Angular ui-router 0.2.14.

These lines are shown for the element only (AFAIK) and in apparently random circumstances.


The Maximum call stack size exceeded error do not appear in the console, though. I have no idea, where it could have been thrown, but I guess not in our scripts or the framework/libraries.

I know, that this might not be very telling, if you need any information, please ask.

Edit When you click on another element in the tree under , then back to , the correct informations regarding the $scope will be shown.

SomeKittens commented 8 years ago

What version of Batarang are you running?

bytelovers commented 8 years ago

I've the same problem, the versión is 0.12.7 and chrome 52. For more details, we have an Angular App 1.5.0

bytelovers commented 8 years ago

After a lot of searching, I discovered that the method of provider compiler $compileProvider.debugInfoEnabled(false); cause that.

Enable again and It works!

SomeKittens commented 8 years ago

Yeah, you need to enable debug in order to use debug tools.

BairDev commented 8 years ago

@bytelovers I'm afraid that I'm still on AngularJS Batarang 0.10.7. Removing and re-intalling it did not change the version.

What do you mean by

Enable again and It works!

exactly? Thanks!

BairDev commented 8 years ago

@SomeKittens Alright, this

you need to enable debug in order to use debug tools

is valid, regardless of versions (Angular, Batarang)?

SomeKittens commented 8 years ago

Yes, regardless of what version of software you're using, you can't use features if you disable them.

ldwnt commented 6 years ago

debug enabled:

        .config(function($compileProvider){
            $compileProvider.debugInfoEnabled(true);
        })

but still get this error:

RangeError: Maximum call stack size exceeded
    at String.replace (<anonymous>)
    at camelCase (http://localhost:8000/bower_components/jquery/dist/jquery.js:3988:44)
    at Data.get (http://localhost:8000/bower_components/jquery/dist/jquery.js:4069:52)
    at Data.access (http://localhost:8000/bower_components/jquery/dist/jquery.js:4087:16)
    at Function.data (http://localhost:8000/bower_components/jquery/dist/jquery.js:4227:19)
    at jqLiteInheritedData (http://localhost:8000/bower_components/angular/angular.js:3160:36)
    at scope (http://localhost:8000/bower_components/angular/angular.js:3285:46)
    at jQuery.fn.init.JQLite.(anonymous function) [as scope] (http://localhost:8000/bower_components/angular/angular.js:3428:27)
    at getScope (<anonymous>:23:39)
    at getScope (<anonymous>:28:22)

jquery: 2.2.4/3.3.1 angularjs: 1.5.8

could anyone help?