Ag-Grid 服务器端行组密钥创建器

Ag-Grid Server Side Row Group Key Creator

当使用 Ag-Grid 的服务器端行模型时,我无法将自定义组键发送到服务器以执行正确的分组查询。

我的行数据是一个简单的 JSON 结构,但有一个复合对象。

row = {
    athlete: '',
    age: '',
    country: {
        name: 'Ireland',
        code: 'IRE'
    },
   ...
}

我正在使用服务器端行模型。要让网格显示国家名称非常简单,因为我使用以下列定义。

{
 headerName: "Country", 
 colId: "country", 
 valueGetter: "data.country.name", 
 enableRowGroup: true
}

但是,当我按 Country 列分组时,ag-grid 从上面的示例中将 groupKey 发送为 'Ireland'。但我需要组密钥作为国家代码,'IRE'。我不知道如何在使用服务器端行模型时生成 groupKey。

我看过 keyCreator 方法,但这只适用于客户端行模型。此外,我还看到了树数据模式,它有一个 getServerSideGroupKey(dataItem) 的回调,但是只有在 gridOptions.treeData = true 并且 treeData 选项设置为 true 时才会使用回调,"Group" 列是无论分组是否发生,始终显示。我通过设置 isServerSideGroup: function(dataItem) {return false;}

对此进行了测试

如有任何帮助,我们将不胜感激。

我能够通过对列定义的字段属性使用点表示法和自定义 cellRenderer 来解决这个问题。

{
 headerName: "Country", 
 colId: "country", 
 field: "country.code", 
 enableRowGroup: true,
 cellRenderer: function (params) {
     return params.data.country.name;
 }
}

这使我能够显示来自自定义对象的正确数据点,并且在执行服务器端操作时,ag-grid 将发送字段属性中包含的数据点。