嵌套在惰性一次性 ng-repeat 绑定中的绑定是否只绑定一次? [英] Do bindings nested inside of a lazy one-time ng-repeat binding bind just once?

查看:26
本文介绍了嵌套在惰性一次性 ng-repeat 绑定中的绑定是否只绑定一次?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的理解是,在下面的代码中,两个绑定都会只懒惰绑定一次:

My understand is that in the following code, both bindings will lazily bind only once:

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

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

However, in the following case will {{item.name}} be updated every digest?

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

以及一次性绑定效果如何嵌套ng-repeats?

And how does one-time binding effect nested ng-repeats ?

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

推荐答案

场景一:

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

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

Both expressions will be one-time bound. Adding an item or changing an existing item's name will not be reflected.

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

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

第一个表达式将是一次性的.添加项目不会被反映.更改现有项目的名称将被反映.

First expression will be one-time bound. Adding an item will not be reflected. Changing an existing item's name will be reflected.

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

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

第一个表达式将是一次性的.添加新项目将不会被反映.添加新事物和更改现有事物的名称将被反映.

First expression will be one-time bound. Adding new item will not be reflected. Adding a new thing and changing existing thing's name will be reflected.

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

这篇关于嵌套在惰性一次性 ng-repeat 绑定中的绑定是否只绑定一次?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆