【问题标题】:How to make a row conditionally draggable in aAG Grid (ag-grid)?如何在 aAG Grid(ag-grid)中使一行有条件地可拖动?
【发布时间】:2021-09-05 18:29:44
【问题描述】:

在 Angular 中使用 AG Grid 并想知道如何使行有条件地可拖动。例如,如果我们只想使选定的网格行可拖动,应该如何实现。

StackBlitz 示例是 here

请指教。

【问题讨论】:

    标签: angular ag-grid ag-grid-angular


    【解决方案1】:

    根据文档:https://www.ag-grid.com/javascript-grid/row-dragging/#enabling-row-dragging

    rowDragcallback函数有如下接口:

    // 启用/禁用 RowDrag 函数 rowDragFunction(params: RowDragCallbackParams) => 布尔值;

    // 参数接口接口 RowDragCallbackParams { 节点:行节点; 数据:任何; 列:列; colDef:ColDef; 上下文:任何; api:网格API; 列API:列API; }

    因此,您应该向rowDrag 提供回调。要查看是否选择了一行,您可以致电node.isSelected()

    rowDrag: params => params.node.isSelected(),
    

    选择一行后,您需要通过在 selectionChanged 事件上调用 api.redrawRows 来刷新 rowDrag 回调:

      onSelectionChanged(event) {
        this.gridApi.redrawRows();
      }
    

    在这里看到这个实现:https://stackblitz.com/edit/ag-grid-angular-hello-world-cmda8j?file=src%2Fapp%2Fapp.component.ts

    【讨论】:

      猜你喜欢
      • 2022-08-04
      • 2019-03-20
      • 1970-01-01
      • 1970-01-01
      • 2021-11-03
      • 2018-10-24
      • 2020-01-20
      • 2020-04-10
      • 2021-04-24
      相关资源
      最近更新 更多