rcrowe/turbo

PHP 应用程序的 Turbolinks,由 pjax 驱动。

0.3.0 2013-06-15 20:45 UTC

This package is auto-updated.

Last update: 2024-08-29 03:41:45 UTC


README

Turbolinks 但适用于您的 PHP 应用程序;由 PJAX 驱动。

Build Status

安装

Turbo 仅通过 Composer 进行安装测试。

rcrowe\turbo 添加到 composer.json 的依赖项中

{
    "require": {
        "rcrowe/turbo": "0.2.*"
    }
}

使用 composer update 更新您的包或使用 composer install 安装。

提供者

提供者使 Turbo 在不同的框架中即时使用,我们目前提供以下集成

Laravel

Turbo\Provider\Laravel\TurboServiceProvider 添加到 app/config/app.php 并开始使用。

Laravel 提供者还注册了一个 turbo.pjax 事件,以便您的应用程序的其他部分可以监听 pjax 请求。例如

Event::listen('turbo.pjax', function($request, $response) {
    $response->header('X-App-Msg', 'Hello world');
});

Fuelphp

class_alias('Turbo\\Provider\\Fuel\\Response', 'Response') 添加到 fuel\app\bootstrap.php 的底部并开始使用。

Turbo 还注册了一个可以监听的 turbo.pjax 事件。例如

Event::register('turbo.pjax', function() {
    echo 'This is a pjax request';
});

PJAX

为了使这一切正常工作,Turbo 需要 PJAX 来获取和设置响应。就像 Turbolinks 一样,我们响应整个 body,而不仅仅是其中的一部分。为了支持这一点,您需要设置 PJAX 以使用 <body> 标签。一个简单的例子将是

$(function() {
    $(document).pjax('.js-pjax', 'body');
});

许可证

Turbo 在 MIT 公共许可证下发布。