rappasoft/laravel-livewire-tables
Laravel Livewire Tables provides dynamic, feature-rich data tables for Laravel Livewire with sorting, searching, filtering, pagination, bulk actions, and Bootstrap/Tailwind support. Build reusable table components backed by Eloquent queries.
To enable clickable rows on your table, you may add the following to the table component configuration:
public function configure(): void
{
$this->setPrimaryKey('id')
->setTableRowUrl(function($row) {
return route('admin.users.show', $row);
})
->setTableRowUrlTarget(function($row) {
if ($row->isExternal()) {
return '_blank';
}
return '_self';
});
}
If you would like to make a certain cell unclickable (i.e. if you have something else clickable in that cell), you may do so by adding the following to the column configuration:
Column::make('Name')
->unclickable(),
Note: LinkColumns are not clickable by default to preserve the intended behavior of the link.
To use wire:navigate, you should return "navigate" as the target for setTableRowUrlTarget
public function configure(): void
{
$this->setPrimaryKey('id')
->setTableRowUrl(function($row) {
return route('admin.users.show', $row);
})
->setTableRowUrlTarget(function($row) {
if ($row->isExternal()) {
return '_blank';
}
return 'navigate';
});
}
How can I help you explore Laravel packages today?