我有一个angularjs应用程序通过ajax传输数据,我想ng-repeat数据。我有数据流和显示,但现在我想templatize对象。我遇到的问题是我正在使用ng-repeat来简单地索引到控制器中的数组中。我现在需要有一个ng-repeat索引到数组
<div class="row" data-ng-repeat="row in rows">
<div class="span3" data-ng-repeat="col in cols">
//displays the raw json fine
{{ data[$parent.$index * numColumns + $index] }}
// also displays the raw json
{{ item = data[$parent.$index * numColumns + $index] }}
<div>Id: {{item.Id}} </div>
<div>Title: {{ item.ClientJobTitle }}</div>
...
</div>
</div>
我总是重复数组索引表达式为每个属性,但也会有几十个属性,因此该代码将是丑陋的,所有的重复计算会慢下来。
什么是正确的(角)方式来做到这一点?
更新 我也需要它响应,我将根据窗口宽度动态调整列数。
更新 我想我真正想要的是类似下面的非工作示例
<div class="row" data-ng-repeat="row in rows">
<div class="span3" data-ng-repeat="col in cols">
<div ng-model="data[$parent.$index * numColumns + $index]">
<!-- Here $model would refer to the ng-model above -->
<div>Id: {{$model.Id}} </div>
<div>Title: {{ $model.Title }}</div>
...
</div>
</div>
</div>
你能告诉我们初始数据的样子吗?无法直观显示'item'与'rows'有关。也许拼凑一块? – jszobody 2013-04-05 16:00:30
@jszobody http://plnkr.co/edit/Bd5tYa7IxMb0ALtUigrz?p=preview – 2013-04-05 16:28:18
您可以创建一个带有transclud的指令,该指令将采用列表,行和列,并使transclud部分的范围内的项目。我知道淘汰赛有与类似的声明,但我不认为角度 – 2017-04-24 19:53:06