You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ag-Grid升级后GridReadyEvent无columnApi及Api无setDatasource问题咨询

AG Grid v30 → v32 升级后的类型错误解决方案

1. GridReadyEvent 不存在 columnApi 属性

移除原因

AG Grid 在 v31 版本重构了事件模型,将 columnApi 从 GridReadyEvent 中移除,统一通过 Grid API 实例访问 Column API,以此简化事件结构并保持 API 一致性。

替代方案

直接从事件的 api 对象中获取 columnApi:

onGridReady({ api }: GridReadyEvent): void {
  this.gridApi = api;
  this.gridColumnApi = api.columnApi; // 从api实例中获取columnApi
  // ... 后续代码
}

2. GridApi 不存在 setDatasource 方法

移除原因

AG Grid 在 v31 版本中废弃了 setDatasource 方法,改用统一的 setGridOption 方法配置网格选项(包括数据源),让所有网格配置的修改方式保持一致,避免分散的 API 方法。

替代方案

使用 api.setGridOption('datasource', dataSource) 替代原有的 api.setDatasource(dataSource):

this.leads$
  .pipe(
    filter((data) => !!data),
    takeUntil(this.destroyed$)
  )
  .subscribe((data) => {
    const dataSource: IDatasource = {
      rowCount: null,
      getRows: ({ successCallback }) => successCallback(data, data.length),
    };

    api.setGridOption('datasource', dataSource); // 替换为统一的setGridOption方法
  });

如果你的网格使用客户端行模型(Client-Side Row Model),直接使用 api.setRowData(data) 会更简洁,无需构建 IDatasource 对象。


内容的提问来源于stack exchange,提问作者Alireza Ahmadi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 07:42:38