Laravel Livewire 搜索按钮而不是实时搜索
Laravel Livewire search button instead of live search
是否可以在 Laravel Livewire 中使用搜索按钮而不进行实时搜索?
我的方法是将 Alpine 与 Livewire 一起使用。
但我没有将搜索词注入 $emit 事件:/
<div x-data="{ search: '' }">
<input type="text" placeholder="Search ..." x-model="search" />
<span x-text="search"></span>
<button wire:click="$emit('test', search )">Search</button>
</div>
O.K。 ...很简单^^
只需将$emit('test', search)
更改为window.livewire.emit('test', search)
<div x-data="{ search: '' }">
<input type="text" placeholder="Search ..." x-model="search" />
<span x-text="search"></span>
<button x-on:click="window.livewire.emit('test', search)">Search</button>
</div>
或者如果您在循环中使用 livewire 组件。上面的 window.livewire.emit 将调用具有相同函数名称的所有循环 livewire 组件 class。
所以最好的做法是使用
x-on:click="@this.call('functionNameInLivewireComponent', search)"
是否可以在 Laravel Livewire 中使用搜索按钮而不进行实时搜索? 我的方法是将 Alpine 与 Livewire 一起使用。 但我没有将搜索词注入 $emit 事件:/
<div x-data="{ search: '' }">
<input type="text" placeholder="Search ..." x-model="search" />
<span x-text="search"></span>
<button wire:click="$emit('test', search )">Search</button>
</div>
O.K。 ...很简单^^
只需将$emit('test', search)
更改为window.livewire.emit('test', search)
<div x-data="{ search: '' }">
<input type="text" placeholder="Search ..." x-model="search" />
<span x-text="search"></span>
<button x-on:click="window.livewire.emit('test', search)">Search</button>
</div>
或者如果您在循环中使用 livewire 组件。上面的 window.livewire.emit 将调用具有相同函数名称的所有循环 livewire 组件 class。
所以最好的做法是使用
x-on:click="@this.call('functionNameInLivewireComponent', search)"