我需要使用ng-repeat
(在AngularJS中)列出数组中的所有元素。
复杂的是,数组的每个元素都将转换为表的一,两或三行。
我不能创建有效的html(如果ng-repeat
在元素上使用),因为在<tbody>
和之间不允许使用任何类型的重复元素<tr>
。
例如,如果在上使用ng-repeat <span>
,我将得到:
<table>
<tbody>
<span>
<tr>...</tr>
</span>
<span>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
</span>
<span>
<tr>...</tr>
<tr>...</tr>
</span>
</tbody>
</table>
无效的html。
但是我需要生成的是:
<table>
<tbody>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
</tbody>
</table>
其中第一行是由第一个数组元素生成的,接下来的三行是由第二数组生成的,第五行是由最后一个数组生成的。
如何使用ng-repeat,使其绑定的html元素在渲染过程中“消失”?
还是对此有另一种解决方案?
澄清:生成的结构应如下所示。每个数组元素可以生成表的1-3行之间。理想情况下,答案应支持每个数组元素0-n行。
<table>
<tbody>
<!-- array element 0 -->
<tr>
<td>One row item</td>
</tr>
<!-- array element 1 -->
<tr>
<td>Three row item</td>
</tr>
<tr>
<td>Some product details</td>
</tr>
<tr>
<td>Customer ratings</td>
</tr>
<!-- array element 2 -->
<tr>
<td>Two row item</td>
</tr>
<tr>
<td>Full description</td>
</tr>
</tbody>
</table>
tr
据我了解,如果我在ng-repeat上使用,我将为每个数组元素获取一行。
tr
被一个数组元素生成S-不具有相同的结构。