Skip to content

injectGridFiltering

Angular inject function for programmatic filter control.

Uses lazy grid discovery - the grid element is found when methods are called, not during initialization.

injectGridFiltering(selector: string): FilteringMethods
NameTypeDescription
selectorstringOptional CSS selector to target a specific grid element.
Defaults to 'tbw-grid' (first grid in the component). Use when the
component contains multiple grids, e.g. 'tbw-grid.primary' or '#my-grid'.
import { Component } from '@angular/core';
import { Grid } from '@toolbox-web/grid-angular';
import '@toolbox-web/grid-angular/features/filtering';
import { injectGridFiltering } from '@toolbox-web/grid-angular/features/filtering';
@Component({
selector: 'app-my-grid',
imports: [Grid],
template: `
<input (input)="applyFilter($event)" placeholder="Filter by name..." />
<span>{{ filtering.getFilteredRowCount() }} results</span>
<button (click)="filtering.clearAllFilters()">Clear</button>
<tbw-grid [rows]="rows" [filtering]="true"></tbw-grid>
`
})
export class MyGridComponent {
filtering = injectGridFiltering();
applyFilter(event: Event) {
const value = (event.target as HTMLInputElement).value;
this.filtering.setFilter('name', value ? { operator: 'contains', value } : null);
}
}
AI assistants: For complete API documentation, implementation guides, and code examples for this library, see https://raw.githubusercontent.com/OysteinAmundsen/toolbox/main/llms-full.txt