ag-grid:api.setRowData函数无法更新树形数据的网格视图。
创始人
2024-07-30 08:31:16
0

当使用树形结构数据时,调用 api.setRowData 函数后,网格视图可能没有自动更新。这可能是因为树形数据中缺少一些必需的属性,例如 parentId 或 treeDataChildren。 为了正确实现这种情况,需要使用 groupDefaultExpanded 和 getDataPath config 属性。

以下是一些示例代码:

// 配置 groupDefaultExpanded 和 getDataPath
gridOptions: {
  groupDefaultExpanded: -1, // -1 表示将所有行作为默认展开
  autoGroupColumnDef: {
    cellRendererParams: {
      suppressCount: true, // 隐藏默认的记录数量
      innerRenderer: 'agChartCellRenderer', // 添加图表单元格渲染器
    },
  },
  getDataPath: function(data) {
    return data.path;
  },
}

// 使用树形数据和调用 setRowData
const treeData = [
  { id: 1, name: 'A', children: [ { id: 2, name: 'B' }, { id: 3, name: 'C' } ] },
  { id: 4, name: 'D', children: [ { id: 5, name: 'E' }, { id: 6, name: 'F' } ] },
];
gridOptions.api.setRowData(treeData);

在上述代码中,我们设置了 groupDefaultExpanded 为 -1,这将使所有行都默认展开,而 getDataPath 函数将返回每个数据项的 path 属性,该属性应该在每个数据项中定义。最后,我们使用 api.setRowData 函数将树形数据设置为网格。

这样,我们就能够正确地在网格中显示树形数据,而无需手动更新网格视图。

相关内容

热门资讯

Android Studio ... 要解决Android Studio 4无法检测到Java代码,无法打开SDK管理器和设置的问题,可以...
安装tensorflow mo... 要安装tensorflow models object-detection软件包和pandas的每个...
安装了Laravelbackp... 检查是否创建了以下自定义文件并进行正确的配置config/backpack/base.phpconf...
安装了centos后会占用多少... 安装了CentOS后会占用多少内存取决于多个因素,例如安装的软件包、系统配置和运行的服务等。通常情况...
按照Laravel方式通过Pr... 在Laravel中,我们可以通过定义关系和使用查询构建器来选择模型。首先,我们需要定义Profile...
按照分类ID显示Django子... 在Django中,可以使用filter函数根据分类ID来筛选子类别。以下是一个示例代码:首先,假设你...
Android Studio ... 要给出包含代码示例的解决方法,我们可以使用Markdown语法来展示代码。下面是一个示例解决方案,其...
Android Retrofi... 问题描述:在使用Android Retrofit进行GET调用时,获取的响应为空,即使服务器返回了正...
Alexa技能在返回响应后出现... 在开发Alexa技能时,如果在返回响应后出现问题,可以按照以下步骤进行排查和解决。检查代码中的错误处...
Airflow Dag文件夹 ... 要忽略Airflow中的笔记本检查点,可以在DAG文件夹中使用以下代码示例:from airflow...