我可以在 ag-grid 的数据源中使用包含句点 (".") 的字段名称吗?
Can I use a field name which contains a period (".") in my data source for ag-grid?
我有一个数据源,其中包含名称中带有句点的字段。例如
[{
"id": 1234,
"OD.name": "Andrew",
"OD.age": 21
},{
"id": 1235,
"OD.name": "Roofus",
"OD.age": 22
}]
但是,当我将其绑定到网格时,不会呈现字段名称中包含句点的列的值。这是 ag-grid 中已知的 bug/not-supported 吗?
字段名称将被网格解释为表达式,因此如果您提供字段 name.of "OD.name",它将尝试查找 "OD" 属性 的数据行,然后尝试找到它的 "name" 属性。当然,那是行不通的。
但是,您可以在列定义中提供一个 "valueGetter" 函数,该函数将负责向网格提供值。在那个函数中,你可以做任何你需要做的事情来从行中获取值并return它。
只需确保 suppressFieldDotNotation 设置为 true。
来自农业网格参考
https://www.ag-grid.com/javascript-grid-properties/
If true, then dots (eg address.firstline) in field names are not
treated as deep references. Allows you to use dots in your field name
if you prefer.
我有一个数据源,其中包含名称中带有句点的字段。例如
[{
"id": 1234,
"OD.name": "Andrew",
"OD.age": 21
},{
"id": 1235,
"OD.name": "Roofus",
"OD.age": 22
}]
但是,当我将其绑定到网格时,不会呈现字段名称中包含句点的列的值。这是 ag-grid 中已知的 bug/not-supported 吗?
字段名称将被网格解释为表达式,因此如果您提供字段 name.of "OD.name",它将尝试查找 "OD" 属性 的数据行,然后尝试找到它的 "name" 属性。当然,那是行不通的。
但是,您可以在列定义中提供一个 "valueGetter" 函数,该函数将负责向网格提供值。在那个函数中,你可以做任何你需要做的事情来从行中获取值并return它。
只需确保 suppressFieldDotNotation 设置为 true。
来自农业网格参考 https://www.ag-grid.com/javascript-grid-properties/
If true, then dots (eg address.firstline) in field names are not treated as deep references. Allows you to use dots in your field name if you prefer.