如何在 ag-grid 中默认对列进行排序?
How to sort a column by default in ag-grid?
我有一个 ag-grid table,它有一个列 'status',其中一些值是 'active',一些是 'inactive'。我希望 table 默认只显示状态为 'active' 的行。使用 this question 作为参考,我尝试使用 onFirstDataRendered 来设置它:
const onFirstDataRendered = (params: FirstDataRenderedEvent) => {
const filter = params.api.getFilterInstance('status');
if (filter) {
filter.setModel({
type: 'equal',
filter: 'ACTIVE',
});
filter.onAnyFilterChanged();
}
};
但我的代码无法编译,因为它说我无法调用 onAnyFilterChanged,因为我“无法调用可能未定义的对象”。有谁知道如何解决这个问题?
问题可能是 type
应该是 equals
而不是 equal
,如文档中所示:https://www.ag-grid.com/javascript-data-grid/filter-provided-simple/#simple-filter-options
如果这不能解决问题,请尝试使用 Filter API:
const onFirstDataRendered = (params: FirstDataRenderedEvent) => {
const filterModel = {
status: {
filterType: 'text',
type: 'equals',
filter: 'ACTIVE'
},
}
params.api.setFilterModel(filterModel)
};
我有一个 ag-grid table,它有一个列 'status',其中一些值是 'active',一些是 'inactive'。我希望 table 默认只显示状态为 'active' 的行。使用 this question 作为参考,我尝试使用 onFirstDataRendered 来设置它:
const onFirstDataRendered = (params: FirstDataRenderedEvent) => {
const filter = params.api.getFilterInstance('status');
if (filter) {
filter.setModel({
type: 'equal',
filter: 'ACTIVE',
});
filter.onAnyFilterChanged();
}
};
但我的代码无法编译,因为它说我无法调用 onAnyFilterChanged,因为我“无法调用可能未定义的对象”。有谁知道如何解决这个问题?
问题可能是 type
应该是 equals
而不是 equal
,如文档中所示:https://www.ag-grid.com/javascript-data-grid/filter-provided-simple/#simple-filter-options
如果这不能解决问题,请尝试使用 Filter API:
const onFirstDataRendered = (params: FirstDataRenderedEvent) => {
const filterModel = {
status: {
filterType: 'text',
type: 'equals',
filter: 'ACTIVE'
},
}
params.api.setFilterModel(filterModel)
};