相关疑难解决方法(0)

如何计算页面上的手表总数?

在JavaScript中,有没有办法计算整个页面上有角度的手表的数量?

我们使用Batarang,但它并不总是适合我们的需求.我们的应用很大,我们有兴趣使用自动化测试来检查手表数量是否增加太多.

在每个控制器的基础上计算手表也是有用的.

编辑:这是我的尝试.它使用ng-scope来计算所有东西中的手表.

(function () {
    var elts = document.getElementsByClassName('ng-scope');
    var watches = [];
    var visited_ids = {};
    for (var i=0; i < elts.length; i++) {
       var scope = angular.element(elts[i]).scope();
       if (scope.$id in visited_ids) 
         continue;
       visited_ids[scope.$id] = true;
       watches.push.apply(watches, scope.$$watchers);
    }
    return watches.length;
})();
Run Code Online (Sandbox Code Playgroud)

angularjs

142
推荐指数
7
解决办法
7万
查看次数

AngularJS的$ watch功能如何工作?

我现在正在阅读很多关于AngularJS的内容,并且我遇到了神奇的$ watch功能.我理解如何使用它,但我想知道它是如何在后台实现的.它是时间间隔功能吗?或者是Angular在每次执行声明时都会调用此表吗?

我现在不想深入研究源代码,如果你们中的一个人已经知道答案并希望分享他对这个主题的了解,我会很高兴.

谢谢.

javascript angularjs angularjs-scope

48
推荐指数
1
解决办法
1万
查看次数

什么被添加到$ scope.默认情况下,观察者在Angular?什么触发$摘要?

我读自创AngularJS和具有怎样的一个体面的理解$scopes,$watch$digest工作.我了解当你添加自己的$watches并且打电话给自己时它是如何工作的$digests.但是,我对于默认情况下究竟发生什么感到困惑.

  1. $scope.$$watchers默认添加什么?你穿的一切$scope?你指定的所有东西ng-model?都?别的什么?

  2. 什么时候确实$digests被默认触发?输入字段更改?输入字段用ng-models?其他?

data-binding angularjs angularjs-scope

0
推荐指数
1
解决办法
1955
查看次数