{ id, text }).{ id, text } arrays).@vite(['resources/js/select2.js'])).resources/js/app.js:
import 'select2/dist/js/select2';
import 'select2/dist/css/select2.css';
composer require livewire/livewire).laravel-select2).composer require pharaonic/livewire-select2
select2 config files).use Pharaonic\LivewireSelect2\LivewireSelect2;
public function mount() {
$this->options = [
['id' => 1, 'text' => 'Option 1'],
['id' => 2, 'text' => 'Option 2'],
];
}
public function render() {
return view('livewire.example')->layout('layouts.app');
}
<livewire-select2 wire:model="selectedOption" :options="$options" />
public function getOptionsProperty() {
return collect($this->search('query'))->map(fn($item) => [
'id' => $item->id,
'text' => $item->name,
]);
}
options with relationships (e.g., User::with('roles')).wire:debug and browser dev tools to inspect Select2 initialization.$wire object not found) if Alpine.js is misconfigured.options or using Laravel’s query caching.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Livewire version incompatibility | Component breaks on update | Pin Livewire |
How can I help you explore Laravel packages today?