我有一个ng-grid,其数据按类别分组,如下所示:
$scope.gridOptions = {
columnDefs: [
{field: 'cat', displayName: 'Category'},
{field: 'name', displayName: 'Name'},
{field: 'val', displayName: 'Value'}
],
data: 'myData',
groups: ['cat']
}
我希望能够通过按钮在外部取消对ng-grid中的数据进行分组。我不想显示组面板(通过$scope.gridOptions.showGroupPanel: true
),它提供了一个“X”来清除分组。
我在点击外部按钮时尝试执行以下操作但没有成功:
$scope.gridOptions.groups = [];
$scope.gridOptions.groups.length = 0
有关如何清除分组的任何建议?最后,我希望能够通过按钮打开/关闭分组;但是,清除分组似乎是一个很好的第一步。谢谢你的帮助!
这是Fiddle
答案 0 :(得分:3)
源代码中有一个未记录的函数,用于以编程方式设置组。你可以简单地说:
gridOptions.groupBy(columnFieldKey)
不幸的是,我无法通过编程方式一次找到按多个列分组的方法。
答案 1 :(得分:1)
您可以通过一系列分组语句将列添加到现有分组列中。
gridOptions.groupBy(col1);
gridOptions.groupBy(col2);
您可以按
清除现有的群组gridOptions.groupBy(null);