5

我有一组要在 ng-grid 中显示的对象。每行都有一个布尔属性isVisible。在 ng-grid 中,我只想显示isVisible正确的行。其他行应完全隐藏。

我尝试使用 arowTemplate和数据绑定 ang-showisVisible。这隐藏了行的内容,但将实际行留在原处,显示一个空行。

我曾尝试使用 filterOptions,但无法找出进行此类过滤的正确语法。我找不到任何关于如何设置它的好文档。

我什至尝试通过gridTemplate在 ng-grid 源中添加过滤器来修改 ng-grid 源中的ng-repeat=\"row in renderedRows\",但我也没有让它工作。

我想我可以通过临时删除行来修改数组本身,但我不希望这样做,因为我必须能够再次显示行(它实际上是我正在做的扩展器,应该隐藏/显示子行)

4

1 回答 1

1

还可以尝试根据 isVisible 有条件地将模板中行的高度设置为“0”,或者使用带有 ng-class 的 CSS 类。使用它的 CSS 直到你得到想要的效果,然后你可以在你的模板中使用它。

这听起来像是实际上可以从使用高度和 CSS 动画中受益的类型,因此它以动画样式打开和关闭。如果您有 jsFiddle 示例,我很乐意尝试并提供帮助。

编辑:在查看了网格实际上如何布置它的行(绝对定位)之后,你真的只有两个我能想到的选项:

1)通过类似的功能过滤您绑定到网格的数据,dataVisible()但将完整的数据列表保留在控制器内部,以便您可以轻松显示/隐藏

2) 向 ng-grid 项目(或 fork)提交一个补丁,并提供您正在寻找的过滤功能。开箱即用,它似乎不支持这种情况。

于 2013-08-27T05:00:36.773 回答