我回到Angular,一直在阅读有关摘要周期和观察者的信息,我读过的一篇文章说,对于{{}}中的表达式,那么angular将在每个周期中对此进行评估。
鉴于以下将有3个观察者设置(数量,成本和花括号中的表达式)?
<div ng-app ng-init="qty=1;cost=2">
<b>Invoice:</b>
<div>
Quantity: <input type="number" min="0" ng-model="qty">
</div>
<div>
Costs: <input type="number" min="0" ng-model="cost">
</div>
<div>
<b>Total:</b> {{qty * cost | currency}}
</div>
</div>
该片段取自角度开发者指南,当说qty变量增加并且摘要触发它是否根据绑定到qty的观察者更新模型然后调用另一个观察者以花括号更新表达式?< / p>
文章说,每次循环运行时,即使这两个模型变量没有改变,表达式观察器也会被触发。
由于
答案 0 :(得分:1)
是的,这是观察者被解雇的$ digest周期。 当一个观察者被激活时,AngularJS会评估范围模型,如果它已经改变,那么就会调用相应的监听器函数。