You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> **Remote data note:** For remote filtering, subscribe to `(filteringExpressionsTreeChange)` instead of `(filteringDone)`. The former reflects the complete grid-level filter tree, including "clear all filters" — `filteringDone` is column-scoped and can miss global state changes.
2.**Use `[isLoading]`** — shows a loading indicator while data is being fetched
300
304
3.**Apply `NoopSortingStrategy` and `NoopFilteringStrategy`** — prevents the grid from performing client-side sorting/filtering, so the server results are displayed as-is
301
305
4.**Listen to `(dataPreLoad)`** — fires when the user scrolls and the grid needs more rows; provides `startIndex` and `chunkSize` (first `chunkSize` will be 0 — use a fallback)
302
-
5.**Listen to `(sortingDone)` and `(filteringDone)`** — reset to the beginning and re-fetch with new parameters
306
+
5.**Listen to `(sortingDone)` and `(filteringExpressionsTreeChange)`** — reset to the beginning and re-fetch with new parameters; `filteringExpressionsTreeChange` is the grid-level output that reflects the complete filter state (unlike the column-level `filteringDone`)
303
307
6.**Track current sort/filter state** — store them so every `loadData` call includes the active criteria
304
308
7.**Debounce `(dataPreLoad)`** — use `debounceTime` to avoid flooding the server during fast scrolling
305
309
8.**Use `[uniqueColumnValuesStrategy]`** — when using Excel-style filtering, supply a callback to load unique column values from the server
0 commit comments