0

我有由多行数据组成的数据。每行包含一个“子”数组属性,该属性可能具有多行形式的数据,也可能为空。最重要的是,'children' 数组属性中的每一行也可能包含更多的 'children' 数据或行等等,所以它看起来像这样(将每一行视为一行,将每个缩进的行视为一个孩子该行的行):

r|-------
 r1|------*
   r1a|------
   r1b|------*
      r1b1|------
   r1c|------*
      r1c1|------
      r1c2|------
 r2|------
 r3|------*
   r3a|------
   r3b|------

每个包含子行的父行(我用'*'标记它们)都必须定义 detailCellRendererParams,如果我只是要手动定义每一行,这很好(如 Ag-Grid 文档中的 Nesting Master / Detail 所示,但是,它是不确定会有多少父/子行。我正在寻找一个递归函数,为每个有子行的父行定义 detailCellRendererParams。我怎么能写这样的东西?

4

1 回答 1

0

不需要递归,只需使用 ag-grid 的树数据功能:

https://www.ag-grid.com/javascript-grid-tree-data/

您需要通过以下方式启用树功能:

var gridOptions = {
    treeData: true,
    ...
}

并为网格提供创建树层次结构的字段

gridOptions.getDataPath: function(data) {
   return data.myHierarchyField;
},
于 2019-03-19T06:07:55.590 回答