安装 Laravel PJAX

Installing Laravel PJAX

我正在尝试为 LAravel 5.1 安装 PJAX,但在安装中间件时遇到问题。

jquery pjax 安装正常,我可以说它正在工作。我当时的问题是 url 正在发生变化,当浏览器上的刷新被推送时,页面正在刷新仅 ajax 的组件。我知道这应该发生,所以我找到了 Laravel.

的 JacobBennet PJAX

"jacobbennett/pjax": "0.*" 到 compose.json 并更新,我可以看到相关项目已经安装。

然后我将 JacobBennett\Pjax\PjaxMiddleware 添加到我的 app/Http/Kernel。php

我的 Kernel.php $middleware 数组现在看起来像这样。

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \App\Http\Middleware\EncryptCookies::class,
    \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class,
    \App\Http\Middleware\VerifyCsrfToken::class,
    JacobBennett\Pjax\PjaxMiddleware
];

然而,当我现在尝试打开我得到的页面时,

PHP Fatal error: Undefined constant 'App\Http\JacobBennett\Pjax\PjaxMiddleware'

我确定这很简单,但我错了。我已经搜索了几个小时,但我的大脑出现故障了 ;)

任何帮助将不胜感激!

非常感谢

尝试将最后一行更改为

 JacobBennett\Pjax\PjaxMiddleware::class

在 laravel 5.0* 版本中有斜杠是否有中间件 class.And 还有你在 JacobBennett\Pjax\PjaxMiddleware.

的开头错过了“\”

所以用这个改变你的中间件代码。

   protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \App\Http\Middleware\EncryptCookies::class,
    \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class,
    \App\Http\Middleware\VerifyCsrfToken::class,
    \JacobBennett\Pjax\PjaxMiddleware::class
];

就是这样!!