Angular ng-repeat最佳实践,仅在特定迭代中监视更新

山地车

我需要呈现一个表,在该表中,允许用户编辑每一行的某些字段,这些字段会影响同一行中的其他字段。

因此,我无法对要渲染的所有数据使用一次绑定。

如果我做对了,只需使用如下代码

<table class="table table-bordered table-condensed table-hover">
  <thead>
    <tr class="info">
      <th>Header</th>
      <th>Header</th>
      <th>Header</th>
      <th>Header</th>
    </tr>
  </thead>
  <tbody>
    <tr ng-repeat="a in alist">
      <td>{{::a.id}}</td>
      <td>{{::a.cod}}</td>
      <td>
        <input
          ng-model="a.sel"
          type="checkbox"
          class="input-sm"></input>
      </td>
      <td ng-if="a.sel">
        {{::a.desc}}
      </td>
      <td ng-if="!a.sel">
        "Other Content"
      </td>
    </tr>
  </tbody>

会导致每次用户选中或取消选中a.sel复选框时,都会监视页面中所有有角度的{{vars}}(而不是{{:: vars}})的更改。

如果这是真的(因此这就是为什么加载数百行时页面变慢的原因),我怎么能告诉angular我只希望它检查特定行,特定ng-repeat迭代中是否发生了更改?

不确定如何继续获得良好的性能,任何其他技巧都值得赞赏。

托斯克

尝试使用track by告诉angular应该对其进行评估:

 <tr ng-repeat="a in alist track by $index">

或者

  <tr ng-repeat="a in alist track by a.id">

有关更多信息,请参见ng-repeat 文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Angular 1.0.8:如何跳过ng-repeat中的迭代

来自分类Dev

angular.js ng:repeat迭代中的动态模板值

来自分类Dev

对Angular中的复杂json对象进行ng-repeat(迭代)

来自分类Dev

Angular指令在ng-repeat上更新

来自分类Dev

Angular 1.5无法更新ng-repeat

来自分类Dev

Angular ng-repeat问题

来自分类Dev

如何更新Angular js中的ng-repeat值?

来自分类Dev

在ng-repeat Angular JS中获取更新的值

来自分类Dev

ng-repeat Angular中递增的数字

来自分类Dev

ng-repeat中的Angular img源

来自分类Dev

Angular JS在ng-repeat中显示特定的ng-grid

来自分类Dev

如何在Angular中更新ng-if?

来自分类Dev

在Angular中从指令更新ng-include

来自分类Dev

填充迭代器之前,Angular ng-repeat渲染模板

来自分类Dev

填充迭代器之前,Angular ng-repeat渲染模板

来自分类Dev

ng在Angular下的ng-repeat下单击

来自分类Dev

与ng-if等效的ng-repeat的Angular2?

来自分类Dev

与ng-if等效的ng-repeat的Angular2?

来自分类Dev

ng-if 上的 ng-repeat 值 angular js

来自分类Dev

仅在Angular的ng-repeat中唯一的情况下返回重复的对象

来自分类Dev

Angular js将仅在ng-repeat中显示第一个元素

来自分类Dev

Angular指令不被ng-repeat调用

来自分类Dev

Angular ng-repeat with array length condition

来自分类Dev

Angular js ng-repeat按键堆叠

来自分类Dev

Angular JS从静态变为ng-repeat

来自分类Dev

Angular ng-repeat创建表问题

来自分类Dev

Angular ng-repeat什么也没显示

来自分类Dev

Angular ng-repeat我如何求和

来自分类Dev

angular 嵌套数组的 ng-repeat