通用循环指令,是否存在?

时间:2013-06-07 20:05:24

标签: angularjs angularjs-directive angularjs-ng-repeat

我们有一些看起来像这样的数据:

[{id: 1, link: "foo"}, {id: 2, link: "bar"}, ..., {id:n, link:"nth"}]

我们希望生成这样的输出:

<ul>
<li>id is: 1</li>
<li>link is: "foo"</li>
<li>id is: 2</li>
<li>link is: "bar"</li>
...
<li>id is: n</li>
<li>link is: "n"</li>
</ul>

这是一个乍一看我们想要写一个的情况 名为'menuitem'的指令将发出内容

<li>id is: 1</li>
<li>link is: "foo"</li>

我们可以做<menuitem ngrepeat="item in items"></menuitem>之类的事情,所以我们可以用自定义指令的NG方式来做 然后使用标准ngrepeat功能。盯着它看 虽然看起来我们应该只是概括它以便我们 可以根据需要定义更多的自定义指令 像:

<ng-repeater ngrepeat="item in items">
  <li>id is: {{item.id}}</li>
  <li>link is: "{{item.link}}"</li>
</ng-repeater>

然后我们想知道,在某个地方已经存在这样的事情吗? 因为......我敢打赌,我们并不是第一个想做类似事情的人 此

祝福

1 个答案:

答案 0 :(得分:1)

管道中有一些新功能可以处理这种情况,但我认为它尚未在新版本中发布:

https://github.com/angular/angular.js/commit/e46100f7097d9a8f174bdb9e15d4c6098395c3f2

It is now possible to iterate over multiple elements like so:

<table>
  <tr ng-repeat-start="item in list">I get repeated</tr>
  <tr ng-repeat-end>I also get repeated</tr>
</table>