Angular.js ng-repeat跨越多个tr

the*_*zza 124 html javascript angularjs

我使用Angular.js作为一个应用程序,它使用隐藏的trs来模拟滑出效果,方法是显示tr并向下滑动下面td中的div.当迭代这些行的数组时,这个过程使用knockout.js非常有效,因为我可以使用<!-- ko:foreach -->两个tr元素.

对于angular,ng-repeat必须应用于html元素,这意味着我似乎无法使用标准方法重复这些双行.我对此的第一个回应是创建一个表示这些双trs的指令,但由于指令模板必须有一个根元素,但我有两个(<tr></tr><tr></tr>).

如果有任何有ng-repeat和angular经验的人已经破解了这个可以解释如何解决这个问题,我将非常感激.

(我还应该注意,附加ng-repeat到tbody是一个选项,但这会产生多个tbodys,我认为这是标准HTML的不良形式,但如果我错了,请纠正我)

Glo*_*opy 167

使用ng-repeaton tbody似乎有效,请参阅此帖子.

另外,通过html验证器的快速测试允许tbody同一个表中的多个元素.

更新:至少从Angular 1.2开始,有一个ng-repeat-startng-repeat-end允许重复一系列元素.有关更多信息,请参阅文档,感谢@Onite的评论!

  • 现在它已经过了一段时间,但Angular 1.2引入了ng-repeat-start和ng-repeat-end指令,允许您迭代多个元素. (11认同)

Ans*_*son 35

AngularJS开发人员@ igor-minar 在多个元素的Angular.js ng-repeat中回答了这个问题.

MiškoHevery最近通过ng-repeat-start和实施了适当的支持ng-repeat-end.从1.0.7(稳定)和1.1.5(不稳定)开始,此增强功能尚未发布.

更新

现在可以在1.2.0rc1中使用.查看John Lindquist 的官方文档这个截屏视频.