Рекурсивная функция для detailCellRendererParams, Ag-Grid? - PullRequest
0 голосов
/ 18 марта 2019

У меня есть данные, которые состоят из нескольких строк данных. Каждая строка содержит свойство массива 'children', которое может содержать данные в виде нескольких строк или может быть пустым. Кроме того, каждая из строк в свойстве массива 'children' может также содержать больше данных или строк 'children' и т. Д., Поэтому это выглядит так (воспринимайте каждую строку как строку, а каждую строку с отступом - как дочернюю) строка этого ряда):

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

Для каждого родителя, содержащего дочерние строки (я пометил их '*'), должен быть определен detailCellRendererParams, что хорошо, если я просто собирался определить каждую из них вручную (, как показано в документации Ag-Grid в разделе Nesting Master / Detail , однако, неизвестно, сколько будет строк родительских / дочерних элементов. Я ищу создание рекурсивной функции, которая определяет detailCellRendererParams для каждой родительской строки с дочерними элементами. Как можно написать что-то подобное?

1 Ответ

0 голосов
/ 19 марта 2019

Рекурсия не требуется, просто используйте функциональность дерева данных ag-grid:

https://www.ag -grid.com / JavaScript-сетка-дерево-данные /

Вам необходимо включить функциональность дерева с помощью:

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

и предоставьте сетку с полем, которое создает вашу древовидную иерархию

gridOptions.getDataPath: function(data) {
   return data.myHierarchyField;
},
...