2

我正在使用带角度的 ag-grid,我想对其应用外部过滤器。该文档显示了该doesExternalFilterPass函数的示例:

function doesExternalFilterPass(node) {
  switch (ageType) {
    case 'below30': return node.data.age < 30;
    ...
    default: return true;
  }
}

它基本上使用原始数据来过滤行。当我使用列 valueGetter/filterValueGetter 函数来修改值时,我希望外部过滤器根据这些函数的返回值进行过滤,但我还没有找到正确的方法来执行此操作。

我可以通过调用
this.gridOptions.api.getValue(columnId, node);
(在后台调用 valueGetter)而不是获得我想要的值,
node.data[columnId]
但我没有找到任何这样做的例子。

所以我要求以正确的方式调用内部的 valueGetter 函数,doesExternalFilterPass或者其他人如何解决这个问题。

(当您的行甚至不包含在数据对象中时,这一点尤其重要。这是通过 valueGetter/filterValueGetter 函数计算列值的情况,例如通过添加另外两个列。)

4

1 回答 1

0

valueGetter您可以在将数据馈送到网格之前计算的数据模型中添加自定义字段,而不是使用。您将需要预处理数据,然后在列定义和外部过滤器中使用这个新字段。

于 2018-09-25T20:15:00.673 回答