当前位置: 首页 > 面试题库 >

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

胡志
2023-03-14
问题内容

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


<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>

问题答案:

方案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



 类似资料:
  • 问题内容: 我想知道是否可能有一个ng类,其中class一度绑定,并且每个摘要周期评估一次class。 我知道我可以一次绑定完整的ng-class, 但是我需要一次绑定一个特定的表达式 当然,这是行不通的: 有办法吗? 问题答案: 方法1: 方法2:

  • 问题内容: 自1.3.0-beta.10版本以来,AngularJS具有一项新功能:“懒惰的一次性绑定”。 可以在简单表达式的前面加上,告诉angular在首次评估表达式后停止观看。给出的常见示例如下所示: 类似以下表达式的语法是否类似? 问题答案: 是。您可以在每个表达式前添加,甚至可以在或中添加前缀: 实际上,代码只是检查表达式中的前两个字符是为了激活一次性绑定(然后将其删除,因此甚至不需要括

  • 必须这样做真的,真的很愚蠢: 我相信这会给我4美元的观察者...所以我正在寻找一个替代方案来避免像那样愚蠢。

  • 问题内容: 我正在尝试处理ng-repeat循环内的范围问题-我浏览了很多问题,但还无法使我的代码正常工作。 控制器代码: 视图: 这是一个小提琴:http : //jsfiddle.net/cyberwombat/zqTah/ 基本上,我有一个包含多行文本的对象(这是一个传单生成器)。用户可以调整每行文本(文本,字体,大小,颜色等),我想为其创建预览。上面的示例仅显示了输入文本的输入字段,我希望

  • 问题内容: 我遵循Presentation Model模式对一些屏幕进行编码。 我把一些豆子放在一个 我将在中显示此列表的内容,这要归功于 我还想同时在组合框(以表单的形式)中显示此列表中的 某些记录* , 并同时 在JList中显示 其他 记录。 *** 这三个屏幕(及其模型)彼此独立 如何管理在我的列表中添加{一个或多个} /删除{一个或多个}并在各处实时查看更改? 我将要编写自己的Obser

  • 我对Angular的一次性绑定有困难。 假设我想将ngIf与一次性绑定结合使用,如下所示: 在这种情况下,角为if中的表达式创建了一个监视。一旦它被解析为非未定义的值,监视就会被删除。 如果它仅被解析为真实值,则后代html树将被添加到DOM并随后呈现。 现在这一切都很好,但我真的想避免初始监视,只需解析表达式,如果它未定义,只需设置一个监视。原因在我的场景中相当复杂,但基本上我有一些机制,可以暂