AngularJS $如何在ng-repeat中观察这些情况?

前端之家收集整理的这篇文章主要介绍了AngularJS $如何在ng-repeat中观察这些情况?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
据我所知,AngularJS在ng-repeat上设置了一些手表.此时设置了什么类型的手表?

此外,有人可以解释在每种情况下会发生什么?我想知道,如果我有很多物品,那么用户不会因为我以其他方式书写而被淘汰的手表陷入困境.

<div ng-repeat="item in items">
  <div>{{item.property}}</div>
</div>

<div ng-repeat="item in items">
  <div>{{item.property | myFormatter}}</div>
</div>

<div ng-repeat="item in items">
  <div>{{format(item.property)}}</div>
</div>

<div ng-repeat="item in items">
  <div>{{item.something()}}</div>
</div>
每次ng-repeat都会设置$watch. (如果你看一下 ng-repeat source code,大部分都是$watch方法的watchExpression函数).每次Angular digest cycle运行时,此项目中的每个项目都将由此监视功能进行检查. (请注意,在摘要周期中,可以多次调用此监视功能).

每个{{}}设置一个$watch.如果item.property之类的内容在{{}}内,则每个摘要周期至少检查一次.

如果函数在{{}} s内,则每个摘要周期至少调用一次该函数.

我不确定x |过滤器,但this fiddle似乎表明,每个摘要周期至少调用一次过滤器,即使x没有变化.

猜你在找的Angularjs相关文章