在Ag Grid中使用ValueGetter进行聚合函数的编写,可以按照以下步骤进行:
{
headerName: 'Quantity',
field: 'quantity',
aggFunc: 'sumAggFunc'
}
node
: 当前聚合行的节点。data
: 当前聚合行的数据。key
: 当前列的字段名。value
: 当前单元格的值。getValue
: 获取单元格值的函数。function sumAggFunc(params) {
let sum = 0;
params.node.childrenAfterFilter.forEach(function(node) {
sum += Number(params.getValue(node, params.key));
});
return sum;
}
在上述示例中,我们遍历当前聚合行的所有子行,并使用getValue
方法获取每个子行的"quantity"值,并累加到总和中。最后返回总和值。
gridOptions: {
// ...
aggFuncs: {
sumAggFunc: sumAggFunc
}
}
在这个示例中,我们将"sumAggFunc"函数添加到"aggFuncs"对象中,以便Ag Grid能够识别和使用它。
通过以上步骤,我们就可以使用ValueGetter在Ag Grid中编写聚合函数了。这些步骤可以根据具体的需求和聚合函数的逻辑进行调整和修改。