【发布时间】:2018-12-14 19:27:30
【问题描述】:
我想按年份对行进行分组。 我没有包含 int Year 的列,但我得到了 Date 类型的列。
在我的列定义中,我添加了 rowGroup:true 来激活分组。
现在我如何告诉 agggrid 我想对我的日期的 year 属性进行分组?
是基于valueFormatter吗?
function (data) {
if (data.value == undefined) return "";
var val = (new Date(data.value)).getFullYear();
return val;
}
是基于比较器函数吗?
comparator: function (date1, date2) {
if (date1 == undefined) return -1;
if (date2 == undefined) return 1;
var year1 = date1.getFullYear();
var year2 = date2.getFullYear();
if (year1 == year2) return 0;
return (year1 < year2) ?-1:1;
}
我在比较器中有一个断点。看起来它永远不会被调用。
它在 cellFormatter 中吗?细胞渲染器?
现在我得到了组行为(用于展开/折叠行组的复选框)。但是我有 n 个名为“2018”的组,每个日期一个。
额外问题:如何将此列显示为一个组而不显示为普通列?我想仅按年份分组并显示带有完整日期 dd/mm/yyyy 的“第二”列。
【问题讨论】:
-
对不起,但我没有得到你想要达到的目标,请提供你的代码示例并更清楚地定义问题。顺便说一句,关于日期过滤器比较,您可以查看文档的this part
-
对不起,我认为它很清楚。我想要行分组。我得到了完整日期(日/月/年)的行。我想对所有具有相同年份的行进行分组。我希望网格添加名为 2016,2017,2018... 的“虚拟”行并隐藏实际行。单击 2018 应显示 2018 的实际行。第二次单击将隐藏 2018 的行。折叠/展开/折叠/展开...