Angular 如何对ag grid字段列定义中的嵌套属性进行排序? var数据=[{ 身份证:{ id:“108662”, absoluteUri:“abc.com”, devicedisplayId:“045551” } devicename:“打印机” }] var columnDefs=[ { 标题名称:“设备Id”,字段:“Id”,筛选器: “agTextColumnFilter”,可排序:true, filterValueGetter:函数(参数){ 返回params.data.id.devicedisplayId; }, cellRenderer:函数(参数){ 返回“”; } }
我有嵌套数据。希望实现基于devicedisplayId的排序。我使用filterValueGetter进行筛选,但没有遇到任何此类函数w.r.to排序。对于自定义排序函数,可以使用列定义中的comparator方法,如下所示Angular 如何对ag grid字段列定义中的嵌套属性进行排序? var数据=[{ 身份证:{ id:“108662”, absoluteUri:“abc.com”, devicedisplayId:“045551” } devicename:“打印机” }] var columnDefs=[ { 标题名称:“设备Id”,字段:“Id”,筛选器: “agTextColumnFilter”,可排序:true, filterValueGetter:函数(参数){ 返回params.data.id.devicedisplayId; }, cellRenderer:函数(参数){ 返回“”; } },angular,ag-grid,Angular,Ag Grid,我有嵌套数据。希望实现基于devicedisplayId的排序。我使用filterValueGetter进行筛选,但没有遇到任何此类函数w.r.to排序。对于自定义排序函数,可以使用列定义中的comparator方法,如下所示 var data = [{ id: { id: "108662", absoluteUri:"abc.com", devicedisplayId: "045551" } devicename: "
var data = [{
id: {
id: "108662",
absoluteUri:"abc.com",
devicedisplayId: "045551"
}
devicename: "Printer"
}]
var columnDefs = [
{
headerName: 'Device Id', field: 'id',filter:
'agTextColumnFilter',sortable: true,
filterValueGetter : function(params) {
return params.data.id.devicedisplayId;
},
cellRenderer: function(params) {
return '<a href=" ' + params.value.absoluteUri + '" target="_blank">' +
params.value.devicedisplayId+ '</a>';
}
}
比较器:(id1,id2)=>{
如果(id1.devicedisplayId查看ag grid文档中的自定义排序了解更多详细信息-您好,排序功能不使用
filterValueGetter
,而是使用valueGetter
。您好,我已尝试使用valueGetter,但它似乎没有排序。好的,您可以创建重新排序吗?谢谢。
comparator: (id1, id2) => {
if (id1.devicedisplayId < id2.devicedisplayId) {
return -1;
}
if (id1.devicedisplayId < id2.devicedisplayId) {
return 1;
}
return 0;
}