efficiently / turbolinks
Requires
- php: >=5.4.0
- helthe/turbolinks: ~1.4
- illuminate/support: ~4.1
This package is auto-updated.
Last update: 2022-02-01 12:39:12 UTC
README
支持原始仓库Frenzy Turbolinks,该仓库合并了我的更改 👍
Laravel 4.1+的Turbolinks
Turbolinks是将Rails的turbolinks和jquery.turbolinks宝石移植到使用PHP Laravel 4.1+框架的项目。
版本
以下JavaScript库的当前版本被使用
- turbolinks: v2.4.0
- jquery.turbolinks: v2.1.0
有关Laravel 5.0的支持,请参阅Turbolinks 1.0分支
性能
Turbolinks使您的Web应用程序中的链接跟踪更快。它不会让浏览器在每次页面更改之间重新编译JavaScript和CSS,而是保持当前页面实例存活,并只替换head中的body和title。
性能改进将取决于您使用的CSS和JavaScript的数量。当使用大量的JavaScript和CSS时,您可以获得高达2倍的性能提升。您可以在这里找到Rails基准测试。
安装
使用Composer
在您的composer.json
中添加以下内容
{ "require": { // ... "efficiently/turbolinks": "dev-master" } }
在终端运行此命令
composer update efficiently/turbolinks
将'Efficiently\Turbolinks\TurbolinksServiceProvider',
添加到app/config/app.php
中的providers
数组(如果您已安装此包,请在Larasset之后)。
使用Larasset包
如果您已安装Larasset包
将turbolinks.js
和jquery.turbolinks.js
文件添加到资产管道中,并可供您使用。
在您的app/assets/javascripts/application.js
文件中按此顺序添加以下行
//= require jquery //= require jquery.turbolinks //= require jquery_ujs // // ... your other scripts here ... // //= require turbolinks
然后在您的布局的主<head>
部分。
<!DOCTYPE html> <html lang="en"> <head> <!-- ... --> {{ stylesheet_link_tag('application', ['data-turbolinks-track' => true]) }} {{ javascript_include_tag('application', ['data-turbolinks-track' => true]) }} </head> <!-- ... --> </html>
未使用Larasset包(旧方法)
点击这里手动发布资产。
兼容性
Turbolinks JavaScript 旨在与任何完全支持 pushState 和所有相关 API 的浏览器协同工作。这包括 Safari 6.0+(但不包括 Safari 5.1.x!)、IE10+ 以及最新的 Chrome 和 Firefox。
请注意,由于实例化周期的变化,现有的 JavaScript 库可能并非都与 Turbolinks 兼容。您可能需要修改它们以与 Turbolinks 的新事件集协同工作。有关帮助,请参阅Turbolinks 兼容性项目。
额外资源
如果您需要有关 JavaScript 库及其使用的更多信息,请参阅turbolinks 和 jquery.turbolinks 项目。
问题报告
对于问题或功能请求,请创建一个问题。
致谢
此包是基于Frenzy Turbolinks仓库的分支。
该仓库基于 Symfony 中间件包Helthe Turbolinks。
非常感谢他们!