External filtering allows you to mix your own filtering logic with the grid's inbuilt filtering, without creating column-based filter components.
This form of filtering is only compatible with the Client-Side Row Model, see Row Models for more details.
The example below shows external filters in action. There are two methods on
gridOptions you need to implement:
Grid calls this method to know if an external filter is present.
isExternalFilterPresent is called exactly once every time the grid senses a filter change. It should return
true if external filtering is active or
false otherwise. If you return
doesExternalFilterPass will be called while filtering, otherwise
doesExternalFilterPass will not be called.
doesExternalFilterPass is called once for each row node in the grid. If you return
false, the node will be excluded from the final set.
If the external filter changes, you need to call
api.onFilterChanged() to tell the grid.
The example below shows an external filter in action.