如何在ag-grid-angular中扩展第一组级别

时间:2019-04-05 07:37:25

标签: ag-grid ag-grid-angular

我有一个ag-grid,默认情况下,行按两列分组,但是这些组是折叠的。

colDefs = 
[
  {
    field: 'colA',
    rowGroupIndex: 0,
  },
  {
    field: 'colB',
    rowGroupIndex: 1
  },
  …
];

我想像这样扩展第一个小组级别:

- ColA 1
  + COlB 1 (5)
  + ColB 2 (3)
- ColA 2
  + COlB 3 (1)
  + COlB 4 (9)
  + COlB 5 (11)

扩展第一级小组的最佳位置在哪里?

4 个答案:

答案 0 :(得分:0)

看看我创建的小品: ag-grid: expand groups in ag-grid-angular

this.gridApi.expandAll();

有关更多参考,请查看文档:{​​{3}}

  

expandAll:展开所有组。仅在按至少一列分组时显示。


更新:

以上几点扩展了所有级别的节点。下面的解决方案是根据您的需要实现。

看看我创建的另一个插件: Built In Menu Items

我只是以编程方式扩展0级别的节点。

this.gridApi.forEachNode((node, b) => {
  if (node.level === 0) {
    node.setExpanded(true);
  }
});

答案 1 :(得分:0)

除了Paritosh的答案:

不要使用超时,有一个名为firstDataRendered的事件,它将在需要的时间执行。

答案 2 :(得分:0)

您可以使用groupDefaultExpanded选项: https://www.ag-grid.com/javascript-grid-grouping/(我无法直接链接到该部分,而是搜索groupDefaultExpanded)。对于所有折叠的,将其设置为0,仅对第一级设置为1,等等。设置为-1以展开所有内容。

根据您的情况,将其设置为1以查看1级的项目(即,仅扩展顶层)

<ag-grid-angular [groupDefaultExpanded]="1">
</ag-grid-angular>

答案 3 :(得分:0)

使用 forEachNode 的另一个选项是匹配 field 名称并使用 setRowNodeExpanded

gridApi.forEachNode(rowNode => {
    if (rowNode.field == 'colA')
        gridApi.setRowNodeExpanded(rowNode, true)       
});