我已经坚持这个问题已经两天了,并没有找到合适的问题/示例来帮助我解决问题。
基本上我试图使用ng-repeat生成类别列表,有时这些类别有子类别。当存在子类别时,它应该出现,而当没有子类别时,它应该不出现。
此外,我需要使用<%tr%>生成这些内容。标签。 (我几乎能够根据需要使用' GroupBy'指令,但无法使用<%tr%>标记)。
http://plnkr.co/edit/0Yjp4B9y0STsm6NZQGBk
<table ng-table="tableParams" class="table">
<tbody >
<tr ng-repeat-start="user in steps | filter:categoryFilter" ng-class="{subcategory:user.SubCategory==1}">
<td data-title="'Step Name'" ng-class="{textcolorpink:user.SubCategory==1,textcolorblue:user.SubCategory==0}">
{{user.CategoryName}}
</td>
<td data-title="'SubStep'" ng-class="{textcolorwhite:user.SubCategory==0}">
{{user.CategoryName}}
</td>
</tr>
<tr ng-repeat-start="subuser in steps | filter:subcategoryFilter" ng-class="{subcategory:subuser.SubCategory==1}">
<td data-title="'Step Name'" ng-class="{textcolorpink:subuser.SubCategory==1,textcolorblue:subuser.SubCategory==0}">
{{subuser.CategoryName}}
</td>
<td data-title="'SubStep'" ng-class="{textcolorwhite:subuser.SubCategory==0}">
{{subuser.CategoryName}}
</td>
</tr>
<tr ng-repeat-end ng-hide="true"></tr>
<tr ng-repeat-end ng-hide="true"></tr>
</tbody>
这个plunker应该是这样的:
主要类别1
-------子类别1
-------子类别1
-------子类别1
主要类别2
主要类别3
-------子类别3
-------子类别3
-------子类别3
主要类别4
主要类别5
主要类别6
主要类别7
主要类别8
答案 0 :(得分:1)
ng-hide="subuser.MainCategory !== user.index_id"
Plunker:http://plnkr.co/edit/NWL3K7ZMr6qgd9MFWG3N?p=preview
我希望这就是你要找的东西。我不完全确定你要用你的所有代码完成什么,但是这将隐藏任何不是它们嵌套在其中的项目的子类别的项目。
如果您有更改数据模型的选项,则可以在mainCategories中嵌套子类别。嵌套的ng-repeats往往效果很好,比使用ng-hide更清洁。