Этого можно добиться, используя Внешние фильтры ag-grid
. Быстрый фильтр предпочтителен, если вы хотите выполнить фильтрацию по всей сетке, и ваша функция компаратора в конечном итоге окажетсясложный, если вы хотите отфильтровать только из одного столбца.
В вашем html вы можете сделать onChange={this.jsFunction($event.target.value)}
jsFunction(filterVal) {
this.filterVal= filterVal;
gridOptions.api.onFilterChanged(); //this invokes your custom logic by forcing grid filtering
}
function doesExternalFilterPass(node) {
if (this.filterVal) {
return node.data.yourColumnValue === this.filterVal;
}
return true; //default case return all rows
}
Наконец, обновите конфигурацию вашей сетки
isExternalFilterPresent: true,
doesExternalFilterPass: doesExternalFilterPass
вы можете найти официальный пример здесь