Использование перемещения столбца ag-grid внутри группы (https://www.ag-grid.com/javascript-grid-column-moving/) работает по назначению, но после свертывания этот порядок групп не сохраняется, отображается первый столбец, а не первый столбец после перемещения . Вы можете видеть это как поведение по умолчанию (https://www.ag-grid.com/example.php). Метод столбца API setColumnGroupOpened
используется для развертывания / свертывания группы (вы можете найти его здесь https://www.ag-grid.com/javascript-grid-column-api/).
Шаги:
Есть группа столбцов
Замените первый столбец вторым, перемещая элемент (путем перетаскивания или api)
Свернуть эту группу
Вы можете воспроизвести его в официальном примере https://www.ag-grid.com/example.php.
Фактический результат: отображается первый столбец, а не перемещенный.
Желаемый результат: после сворачивания отображается перемещенный один столбец.
Возможных решений немного, но они казались сомнительными и не совсем чистыми. Может быть алгоритм, изменяющий нужным образом столбец или поле определения группы columnGroupShow
. Поле задокументировано здесь: https://www.ag-grid.com/javascript-grid-column-properties/. Алгоритм может быть выполнен при columnnMoved
или событии развертывания / свертывания. В этой манипуляции следует задействовать столбцы с сохраненным порядком. Метод API столбца для этой цели - getAllGridColumns
. Использование его с полезной нагрузкой событий становится не очень удобным, все столбцы в дереве должны быть проверены, а поле columnGroupShow
должно быть обновлено там, где это необходимо.
Каков правильный / рекомендуемый способ достижения такого поведения?