一尘不染

嵌套在一次懒惰的ng-repeat绑定中的绑定仅绑定一次吗?

angularjs

我的理解是,在下面的代码中,两个绑定只会
延迟地绑定一次

<li ng-repeat="item in ::items">{{::item.name}}</li>

但是,在以下情况下 每个摘要 都会{{item.name}}更新吗?

<li ng-repeat="item in ::items">{{item.name}}</li>

如何一次性约束力嵌套的ng-repeat小号

<li ng-repeat="item in ::items">
  <span ng-repeat="thing in item.things">{{thing.name}}</span>
</li>

阅读 242

收藏
2020-07-04

共1个答案

一尘不染

方案1:

<li ng-repeat="item in ::items">{{::item.name}}</li>

这两个表达式都是一次性的。添加项目或更改现有项目的名称将不会反映出来。

演示: http :
//plnkr.co/edit/53r8FCmcNKNK4MmM6Uzxp2?p=preview

方案2:

<li ng-repeat="item in ::items">{{item.name}}</li>

第一个表达式将是一次性的。添加项目将不会反映出来。更改现有项目的名称将得到反映。

演示: http :
//plnkr.co/edit/52wTEb8ze2FKRDDcS9Ow?p=preview

方案3:

<li ng-repeat="item in ::items">
  <span ng-repeat="thing in item.things">{{thing.name}}</span>
</li>

第一个表达式将是一次性的。添加新项目不会反映出来。添加新事物并更改现有事物的名称将得到反映。

演示: http
//plnkr.co/edit/HkObhkJtUnFEHBAzFUmN?p =
preview

2020-07-04