ag-grid 如果过滤器为空则不显示任何数据
ag-grid if filters are empty show no data
我正在使用 ag-grid 免费版 AngularJS。
是否可以只在任何过滤器有内容时显示行数据?
我已经阅读了所有文档,显然还有 gridoptions,但我一无所获。
按照以下步骤进行操作。
- 使用
(filterChanged)="onFilterChanged($event)"
事件,您可以确定过滤器是否已应用。
代码:
onFilterChanged(params){
let filters = params.api.filterManager.allFilters;
this.filterEnabled = false;
for(var key in filters) {
if(filters[key].column.filterActive) {
this.filterEnabled = true;
break;
}
}
}
- 在事件中设置一个标志
filterEnabled
,用它来决定是否显示数据。 [rowData]="filterEnabled && rowData"
您可以找到有效的 plunk 示例:ag-grid - don't show data if filter is enabled
PS:这个解决方案有一个问题:您需要输入过滤器字符串两次才能启用过滤器。但我希望你能从中得到帮助。
我正在使用 ag-grid 免费版 AngularJS。
是否可以只在任何过滤器有内容时显示行数据? 我已经阅读了所有文档,显然还有 gridoptions,但我一无所获。
按照以下步骤进行操作。
- 使用
(filterChanged)="onFilterChanged($event)"
事件,您可以确定过滤器是否已应用。
代码:
onFilterChanged(params){
let filters = params.api.filterManager.allFilters;
this.filterEnabled = false;
for(var key in filters) {
if(filters[key].column.filterActive) {
this.filterEnabled = true;
break;
}
}
}
- 在事件中设置一个标志
filterEnabled
,用它来决定是否显示数据。[rowData]="filterEnabled && rowData"
您可以找到有效的 plunk 示例:ag-grid - don't show data if filter is enabled
PS:这个解决方案有一个问题:您需要输入过滤器字符串两次才能启用过滤器。但我希望你能从中得到帮助。