角获取范围为batarang

时间:2018-10-16 14:27:03

标签: jquery angularjs angular batarang

我正在访问一个网站,整个搜索结果都存储在角度变量中。

使用Baratang,我可以看到这些变量及其结果,但是我需要在我的Chrome插件中获取这些变量...

对我来说,最重要的变量是“ vm”……它始终填充在作用域$ id38中,但是由于其代码没有ng-scope或ng-controller,所以我从未能够访问此作​​用域,它仅拥有身体功能应用程序。

下面是巴拉丹的照片:

scopes

hinsts, controllers, models

当我进入没有Batarang的站点时,我需要使用以下命令返回范围:angular.reloadWithDebugInfo();

这是我执行以下命令时的返回值:angular.element($ 0).scope();

enter image description here

1 个答案:

答案 0 :(得分:0)

这不是规则,在AngularJS代码中始终会有catch(msg) { errMsgDiv.style.display = "block"; errMsgDiv.innerHTML = msg; formValidity = false; return; } 变量。这取决于开发人员的编码风格。 vm只是在控制器中声明的变量:

vm

某些开发人员会这样做,而有些则不会。

处理Angular作用域对象的更好方法是通过以下方式访问它:

var vm = this;

使用上述解决方案,编写了用于Chrome的 ng-inspector 插件。您也可以在自己的插件中使用此方法。

请记住,您将无法调试以生产模式运行的AngularJS应用程序。在angular.element($0).scope() 中调用$compileProvider.debugInfoEnabled(false)将禁用以任何方式调试AngularJS应用程序的可能性。