البحث بإكمال تلقائي:
المكون
public string $search = '';
public ?User $selected = null;
#[Computed]
public function results()
{
if (strlen($this->search) < 2) return [];
return User::where('name', 'like', "%{$this->search}%")
->limit(5)->get();
}
public function select(User $user)
{
$this->selected = $user;
$this->search = $user->name;
}العرض
<div x-data="{ open: false }">
<input wire:model.live.debounce.300ms="search" @focus="open = true">
<ul x-show="open && $wire.results.length">
@foreach($this->results as $user)
<li wire:click="select({{ $user->id }})" @click="open = false">
{{ $user->name }}
</li>
@endforeach
</ul>
</div>