【问题标题】:AG-Grid + React - ignore grid sort when adding new rowAG-Grid + React - 添加新行时忽略网格排序
【发布时间】:2019-03-13 15:05:24
【问题描述】:

在使用 AG-Grid Enterprise、React 和 Redux 的应用程序中,我想以编程方式将新行添加到已启用排序的网格中。 是否可以忽略网格排序并将这一新行插入特定网格位置?

为了澄清这种情况,我在 AG-Grid's website 上复制了 Simple Immutable Store Plnkr,并创建了一个新的 here

在原始 Plnkr 中,按钮 Append 会将项目添加到列表的末尾。在分叉版本中,由于价格列升序排序,并且由于新项目不再定义价格这一事实,所有附加项目将显示在网格的第一个位置。

我的理解是,这是因为在下面 sn-p (this.gridApi.setRowData) 的最后一行中,AG-Grid 将添加新行并触发排序、过滤器等。

addFiveItems(append) {
    var newStore = immutableStore.slice();
    for (var i = 0; i < 5; i++) {
      var newItem = createItem(append);
      if (append) {
        newStore.push(newItem);
      } else {
        newStore.splice(0, 0, newItem);
      }
    }
    immutableStore = newStore;
    this.gridApi.setRowData(immutableStore);
  }

考虑到这一点,是否有任何 AG-Grid API 允许在激活排序时将项目添加到特定网格位置?目标是保持 Append 按钮的原始行为:将项目附加到网格的末尾,即使在此 AG-Grid Enterprise、React 和 Redux 场景中定义了排序。

【问题讨论】:

    标签: ag-grid ag-grid-react


    【解决方案1】:

    事实证明,从 AG-Grid 17+ 开始,一个名为 postSort 的新回调可用(请参阅 https://www.ag-grid.com/javascript-grid-sorting/#post-sort)。

    如上述文档中所述,即使在应用排序后,此回调也可用于调整行顺序。

    【讨论】:

      猜你喜欢
      • 2018-07-23
      • 2020-11-25
      • 2020-08-19
      • 2019-11-07
      • 2022-10-14
      • 2023-03-13
      • 2021-11-15
      • 2022-12-01
      • 2021-11-18
      相关资源
      最近更新 更多