summerblue/turbo

此包已被废弃,不再维护。未建议替代包。

类似于turbolinks,但适用于您的PHP应用。由pjax提供支持,基于rcrowe/turbo。

0.3.2 2014-10-27 08:54 UTC

This package is not auto-updated.

Last update: 2016-12-20 14:30:40 UTC


README

类似于turbolinks,但适用于您的PHP应用;由PJAX提供支持。

Build Status

安装

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

rcrowe\turbo添加到composer.json的要求中

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

使用composer updatecomposer 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公共许可证下发布。