在angularjs中调用digest有什么用?

时间:2015-10-22 22:34:10

标签: angularjs

我用

<span> {{myFunc()}} </span>

当我打开我的应用时,我发现当应用启动时,myFunc会被调用大约85次。

为什么或者更好的是,$digest通常多次被调用?

函数myFunc被称为setName,如此

                scope.setName = function(scp) {
                    if (typeof $rootScope.newValue === 'undefined' || !$rootScope.newValue)
                        return $filter('translate')('myapp.initial.name');
                    else if (typeof scp.baby !== 'undefined' && scp.baby.name !== null && scp.baby.name !== ""){
                        return scp.baby.name;
                    }
                    else{
                        return $rootScope.newValue;
                    }
                };

1 个答案:

答案 0 :(得分:1)

基本上,摘要是由事件触发的。它可以是计时器,XHR呼叫或用户交互。 但是运行摘要可以触发其他摘要,直到模型稳定,或者直到达到最大数量的循环摘要。默认情况下,角度代码中的此最大数字(称为 TTL(生存时间))定义为10.