多个 `<tr>` 元素的 ng-repeat AngularJS
ng-repeat for multiple `<tr>` elements AngularJS
我正在尝试使用 <tr np-repeat>
遍历 <tbody>
中的对象数组,但考虑到我现在的情况和代码库,我基本上有条件地渲染某些 [=16] =]s 基于相应对象中的一些键值对。自定义包装器指令(例如 ng-container 来环绕 <tr>
s 在这种情况下会有所帮助,但我对 Angular.js 还很陌生,所以如果有人对现有解决方案有一些参考,我宁愿从中启发我自己而不是创造我自己的。谢谢!
我试过使用 ng-repeat-start/ng-repeat-end 但它又不适合我的情况,因为它只指定重复结束的位置,而我还需要指定重复结束的位置。根据我目前的发现,使用 transclude 创建指令可能是可行的方法,但我不确定如何操作。
控制器的东西
$scope.array = [{show: true}, {key: value}, {key: value}]
模板内容
<tbody>
<custom-ng-container-directive ng-repeat="element in array">
<tr ng-if="element.show">
<td>some text</td>
<td>more text</td>
</tr>
<tr ng-if="!element.show">
<td>{{ element.key }}</td>
<td>other text</td>
</tr>
</custom-ng-container-directive>
</tbody>
您应该能够为此使用 ng-repeat-start
和 ng-repeat-end
。请注意,您缺少 <td></td>
元素并且将文本直接放在 <tr></tr>
中的格式不正确 HTML.
<tbody>
<tr ng-repeat-start="element in array" ng-if="element.show">
some text
</tr>
<tr ng-repeat-end ng-if="!element.show">
{{ element.key }}
</tr>
</tbody>
我正在尝试使用 <tr np-repeat>
遍历 <tbody>
中的对象数组,但考虑到我现在的情况和代码库,我基本上有条件地渲染某些 [=16] =]s 基于相应对象中的一些键值对。自定义包装器指令(例如 ng-container 来环绕 <tr>
s 在这种情况下会有所帮助,但我对 Angular.js 还很陌生,所以如果有人对现有解决方案有一些参考,我宁愿从中启发我自己而不是创造我自己的。谢谢!
我试过使用 ng-repeat-start/ng-repeat-end 但它又不适合我的情况,因为它只指定重复结束的位置,而我还需要指定重复结束的位置。根据我目前的发现,使用 transclude 创建指令可能是可行的方法,但我不确定如何操作。
控制器的东西
$scope.array = [{show: true}, {key: value}, {key: value}]
模板内容
<tbody>
<custom-ng-container-directive ng-repeat="element in array">
<tr ng-if="element.show">
<td>some text</td>
<td>more text</td>
</tr>
<tr ng-if="!element.show">
<td>{{ element.key }}</td>
<td>other text</td>
</tr>
</custom-ng-container-directive>
</tbody>
您应该能够为此使用 ng-repeat-start
和 ng-repeat-end
。请注意,您缺少 <td></td>
元素并且将文本直接放在 <tr></tr>
中的格式不正确 HTML.
<tbody>
<tr ng-repeat-start="element in array" ng-if="element.show">
some text
</tr>
<tr ng-repeat-end ng-if="!element.show">
{{ element.key }}
</tr>
</tbody>