UI Grid groupHeaderRow作为第一个子行

时间:2016-04-26 13:18:54

标签: angularjs treeview angular-ui-grid

我一直在我的UI-Grid实现中实现分组。而且我注意到了一些特性,例如即使没有孩子也会对行进行分组。

我通过将一个单元格模板应用于从row.treeNode.children[0].row.entity[col.field]抓取数据的列来解决这个问题。这样,groupHeader实际上显示为组中的第一行。

我还从只有一行的行中删除和禁用了展开/折叠图标。

现在我的问题是当你展开一行时,treeNode中的第一个子节点是组头行下面的第一行,导致一个接一个地重复两行。

在扩展群组时,有没有办法删除第一个子行?或者更好 - 有没有办法阻止UI-Grid对所有行进行分组,无论他们是否有孩子(我希望这可以解决所有问题以及我之前提到的解决方法)。

您可以在下面的屏幕截图中看到问题,此处也可以使用plunker:http://plnkr.co/edit/TtchGXbO6RCt3BP6XIER?p=preview

ui grid grouping

感谢。

1 个答案:

答案 0 :(得分:0)

我最后通过使用ng-class修改模板文件uiGridViewport来解决这个问题,以添加一个' child-row'组中的类到子行。

然后,在CSS中我使用以下内容来隐藏行:

.ui-grid-tree-header-row + .child-row {
    display: none;
}

现在的问题是,如果组中有偶数行,则网格的条带行性质会混乱,但这属于不同的问题。