Javascript 分组时每列的角度网格摘要
我学习了如何在对网格进行分组时自定义网格的聚合Javascript 分组时每列的角度网格摘要,javascript,angularjs,grouping,angular-ui,ng-grid,Javascript,Angularjs,Grouping,Angular Ui,Ng Grid,我学习了如何在对网格进行分组时自定义网格的聚合 现在-如果我的表如下所示,那么在分组groupName时,如果我希望在aggregateTemplate中显示每列的摘要(value1、value2、value3),该怎么办 col1;value1;value2;value3;groupName "first";10;20;30;"group 1" "second";10;20;30;"group 1" "third";10;20;30;"group 2" "fourth";10;20;30;"g
现在-如果我的表如下所示,那么在分组groupName时,如果我希望在aggregateTemplate中显示每列的摘要(value1、value2、value3),该怎么办
col1;value1;value2;value3;groupName
"first";10;20;30;"group 1"
"second";10;20;30;"group 1"
"third";10;20;30;"group 2"
"fourth";10;20;30;"group 3"
"fifth";10;20;30;"group 3"
当然,我可以在aggregateTemplate calculateChildren函数中一个接一个地执行此操作,但重要的是要对齐列及其摘要。因此,基本上我要寻找的是模板生成相同数量的“单元格”,并在该单元格中的每列添加摘要
下面是一个示例:我通过编写自己的aggregationTemplate找到了一个解决方案。该模板现在看起来如下所示:
aggregateTemplate:
"<div onmouseover='mouseOver()'; style='display: inline-block;' ng-click=\"row.toggleExpand()\" ng-style=\"rowStyle(row)\" class=\"ngAggregate\">" +
" <span style='margin-left: -22px' class=\"ngAggregateText\">" +
" <div ng-class=col.colIndex() style='display: inline-block' ng-repeat='col in renderedColumns'><span>{{col.index > 1 ? (aggFunc(row,col) | SwedishCurrency) : (col.index == 0 ? ' ' : row.label)}}</span></div>" +
" </span>" +
" <div class=\"{{row.aggClass()}}\"></div>" +
"</div>" +
""
我使用以下ng repeat(从上面的模板定义中提取)将单元格对齐:
$scope.aggFunc = function(row, col) {
var total = 0;
angular.forEach(row.children, function(cropEntry) {
total += parseFloat(cropEntry.entity[col.field]);
});
return total;
};
ng-repeat='col in renderedColumns'