How to get selected filters in filtersApplyAction?
I have 8 filters that can be applied, I want to save the applied filters in localStorage, when the user clicks on Search button. How can I do that? (I am trying to save so that the user can have previous filters selected whenever the table is viewed again(even after being logged out)).
->deferFilters()
->filtersApplyAction(
function (Action $action) {
return $action
->button()
->url(function (array $data) {
info($data);
})
->label('Search');
}
)
Solution:Jump to solution
I got the work around for this:
`->filtersApplyAction(
fn (Action $action) => $action
->button()
->url(function (Table $table) {...
3 Replies
to get the current filter:
https://filamentphp.com/docs/3.x/tables/filters/getting-started#injecting-the-current-filter-instance
Solution
I got the work around for this:
->filtersApplyAction(
fn (Action $action) => $action
->button()
->url(function (Table $table) {
$filters = $table->getFilters()['dependent_filters']->getState(); // this gets all selected filters
// handle to save these filters on the localStorage
})
->label('Search'),
)
->filtersApplyAction(
fn (Action $action) => $action
->button()
->url(function ($livewire) {
$filters = $livewire->tableFilters['dependent_filters']; // this gets all selected filters
// handle to save these filters on the localStorage
})
->label('Search'),
)
Both of these work