【发布时间】:2020-10-09 11:54:21
【问题描述】:
使用 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 字段。
达到这种行为的正确/推荐方法是什么?
【问题讨论】:
标签: ag-grid ag-grid-react