Livewire v3多分页器搜索时无法重置页码问题求助
解决Livewire多搜索分页无法重置到第一页的问题
问题出在你没有为不同的分页实例指定对应的分页参数名(pageName),导致调用gotoPage()时只会重置默认的page参数,而不会影响juzgados分页的juzgadosPage参数。以下是具体修复步骤:
1. 更新组件中的页码重置方法
修改updatingSearch和updatingSearchJuzgados方法,明确指定对应的分页参数名:
public function updatingSearch(): void { // users分页使用默认的page参数,明确指定更清晰 $this->gotoPage(1, 'page'); } public function updatingSearchJuzgados(): void { // juzgados分页使用自定义的juzgadosPage参数,必须指定 $this->gotoPage(1, 'juzgadosPage'); }
2. 补充每页条数变更时的页码重置
当修改每页显示条数(numberRows和numberRowsJuzgado)时,同样需要重置到第一页,添加对应的钩子方法:
public function updatingNumberRows(): void { $this->gotoPage(1, 'page'); } public function updatingNumberRowsJuzgado(): void { $this->gotoPage(1, 'juzgadosPage'); }
修复原理
你的juzgados分页在查询时指定了自定义的分页参数名:
->paginate($this->numberRowsJuzgado, pageName: 'juzgadosPage');
而gotoPage()方法默认操作的是名为page的参数,因此针对juzgados的分页操作必须显式传入juzgadosPage作为第二个参数,才能正确重置该分页的页码。
验证视图配置
你的视图中已经正确为两个分页的links指定了onPageChange回调,无需修改:
- 用户表格:
{{ $this->users->links('vendor.livewire.bootstrap',['onPageChange' => 'updatingSearch']) }} - 法庭表格:
{{ $this->juzgados->links('vendor.livewire.bootstrap',['onPageChange' => 'updatingSearchJuzgados']) }}
内容的提问来源于stack exchange,提问作者Eduardo Tapia
相关产品推荐
相关产品推荐

