Angular 表达式观察者
Angular Watchers for expressions
我要回到 Angular 并且一直在阅读有关摘要周期和观察者的内容,我读到的一个 post 说对于 {{}} 中的表达式然后 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>
该片段取自 angular 开发人员指南,当说 qty 变量增加并且摘要触发时,它会根据绑定到 qty 的观察者更新模型,然后调用另一个观察者来更新花括号中的表达式?
文章说每次循环运行时表达式观察器都会被触发,即使这 2 个模型变量没有改变。
谢谢
是的,这是观察者被解雇的 $digest 周期。
当观察者被触发时,AngularJS 评估作用域模型,如果它发生变化,则调用相应的监听器函数。
我要回到 Angular 并且一直在阅读有关摘要周期和观察者的内容,我读到的一个 post 说对于 {{}} 中的表达式然后 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>
该片段取自 angular 开发人员指南,当说 qty 变量增加并且摘要触发时,它会根据绑定到 qty 的观察者更新模型,然后调用另一个观察者来更新花括号中的表达式?
文章说每次循环运行时表达式观察器都会被触发,即使这 2 个模型变量没有改变。
谢谢
是的,这是观察者被解雇的 $digest 周期。 当观察者被触发时,AngularJS 评估作用域模型,如果它发生变化,则调用相应的监听器函数。