对 ngRepeat 的绑定

Bindonce on ngRepeat

在 ng-repeat 对象上使用本机绑定有什么影响?例如:

ng-repeat="data in ::stuff"

这是否意味着 'stuff' 中的每个项目都已删除观察者?或者您是否仍然需要像这样将 bindonce 应用于 repeat 中的每个子绑定?

<div ng-repeat="data in ::stuff">
  <span ng-bind="::data.thing"></span>
</div>

对于data in ::stuff,数组被绑定一次并且$watcher在第一次绑定后没有创建,因此对该数组的任何更改都不会更新您的ng-repeat'视图。

但是,除非您 ::data.thing 对单个对象的更改仍将被注册。这些观察者属于对象本身,而不是数组的浅层内容。

请参阅下面的 plunkr。

<iframe src="http://embed.plnkr.co/3gbmI2kqd3rT7z0GEyK7/"></iframe>