【问题标题】:How to call (filter-) valueGetter functions for external filter in ag-grid?如何在 ag-grid 中为外部过滤器调用(过滤器)valueGetter 函数?
【发布时间】:2018-10-04 23:15:21
【问题描述】:

我正在使用带角度的 ag-grid,我想对其应用外部过滤器。 documentation 显示了 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]
但我没有找到任何这样做的例子。

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

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

【问题讨论】:

    标签: ag-grid ag-grid-ng2


    【解决方案1】:

    除了使用valueGetter,您可以将自定义字段添加到您计算的数据模型中,然后再将数据提供给网格。您需要对数据进行预处理,然后在列定义和外部过滤器中使用这个新字段。

    【讨论】:

    猜你喜欢
    • 2020-06-12
    • 2016-09-07
    • 2020-11-19
    • 2017-06-03
    • 2022-10-17
    • 2019-11-12
    • 2019-07-28
    • 2016-06-15
    • 2016-10-23
    相关资源
    最近更新 更多