Ag grid 初始加载后ag网格刷新列过滤器

Ag grid 初始加载后ag网格刷新列过滤器,ag-grid,Ag Grid,根据“网格不会为您更新过滤器,因为有太多的用例……”,同意 我使用的服务器端数据源具有无限分页功能,可以查询大量数据。虽然在初始加载时,我可能确信过滤器列出了所有可用的“选项”,但我希望找到一个解决方案,以确定某个频率/事件“重新加载”过滤器 我正在尝试使用调用gridOptions.api.getFilterInstance(id)返回的对象的resetFilterValues()方法 使用服务器端数据源时,我收到以下console.error输出: ag-Grid:Set-Filter无法初

根据“网格不会为您更新过滤器,因为有太多的用例……”,同意

我使用的服务器端数据源具有无限分页功能,可以查询大量数据。虽然在初始加载时,我可能确信过滤器列出了所有可用的“选项”,但我希望找到一个解决方案,以确定某个频率/事件“重新加载”过滤器

我正在尝试使用调用
gridOptions.api.getFilterInstance(id)
返回的对象的
resetFilterValues()
方法

使用服务器端数据源时,我收到以下console.error输出:

ag-Grid:Set-Filter无法初始化,因为您使用的行模型不包含浏览器中的所有行。使用不同的过滤器类型,或者配置设置过滤器,以便为其提供值(Source ag grid enterprise.min.js:555

注意:使用异步值加载的values方法工作出色,并且是根据建议编写的,例如使用值回调params.success

我使用以下方法在列标题中加载筛选器选项:

{
    headerName: 'Something',
    field: 'SOMETHING',
    width: 200,
    suppressMenu: false,
    suppressFilter: false,
    filter: 'agSetColumnFilter',
    filterParams: {
        values: function (params) {
            someAsyncMethodReturningAPIResultsAsArray();
        }
        newRowsAction: 'keep'
    },
    menuTabs: ['filterMenuTab']
}
然后,我尝试稍后使用以下代码重新加载过滤器(如在网格外按下按钮):

var filter = gridOptions.api.getFilterInstance(id);
filter.resetFilterValues();
此代码导致上述错误

问:有人知道如何配置集合模型以返回错误消息中描述的行吗?有没有更好的方法来解决这个问题


谢谢

下面的代码可以在
postProcessPopup
回调中执行,每次打开弹出窗口时,它都会调用
values()
中定义的
函数

var filter = gridOptions.api.getFilterInstance(id);
filter.refreshFilterValues();

注意:这里的
refreshFilterValues
功能正在发挥作用。它在v24及以上版本中可用。对旧版本不太确定。

您找到刷新(重新加载)的方法了吗过滤器?我正试图找出同样的问题抱歉,没有。看起来这个项目也被他们搁置了。我最终滚动了我自己的自定义过滤器,并拥有了整个流的端到端。不幸的是,根本没有使用他们的内置过滤器。如果有帮助的话,很高兴共享通用代码,只需pmme@Pepto我正在和这个职业选手斗争问题。你能分享你的自定义过滤器关于这个问题吗?这将是很大的帮助。提前谢谢你!