小编Igo*_*gor的帖子

Laravel Livewire 分页

Laravel - 8.6.0 (Jetstream),Livewire - 2.2.7

除其他外,我有两个简单的表格,其中包含使用 Livewire 呈现的搜索输入。两个 Livewire 组件的逻辑几乎相同,主要区别在于 DB 查询格式。在一张表中一切正常(搜索、分页),但在第二张表中存在分页问题。

怎么了? 当我点击分页链接时(例如从第一页 gotoPage(2)),请求被发送,浏览器中的 url 更改为正确的查询字符串,收到响应,但响应中没有 HTML 部分,DOM 中没有变化和分页显示第一页处于活动状态。如果我手动刷新页面,表格会显示第 2 页的数据,之后我什至可以获取下一页或上一页的新数据,但只能在初始页面刷新后获取一次。如果我再次单击分页链接,则没有 HTML 数据响应,也没有 DOM 更改...

我尝试了什么?

  1. 我已经阅读了 Livewire 文档,尝试了“疑难解答”部分中的所有建议解决方案。
  2. 我多次检查我的代码,比较了 Livewire 组件和 Blade 视图,都没有发现一些明显的错误。
  3. 在过去的 10 天里,我一直在 SO、Livewire 论坛、Laracast 论坛上寻找答案,...找到了一些好的建议,尝试了其中的大部分,但没有一个能解决我的问题。
  4. 消除了数据库查询逻辑导致一些问题的可能性,即使我不使用复杂的记录过滤(例如,如果我只是对所有记录进行分页 - Model::all()->paginate(10)),问题也会存在。
  5. 有问题的表通过单选按钮进行了一些额外的记录过滤,我暂时删除了它,但问题仍然存在。

工作 Livewire 组件和 Blade 视图的代码:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;

class Extension extends Model
{
    use HasFactory;
    protected $guarded = [];

    public function user()
    {
        return $this->belongsTo('App\Models\User', 'directory', 'ext');
    }

    public static …
Run Code Online (Sandbox Code Playgroud)

php pagination laravel laravel-livewire

5
推荐指数
1
解决办法
5223
查看次数

标签 统计

laravel ×1

laravel-livewire ×1

pagination ×1

php ×1