竞选局 / 关键Laravel路由
自动为Laravel项目中的静态路由创建和链接关键CSS
v1.2.0
2022-04-13 14:28 UTC
Requires
- php: ^7.2||^8.0
- illuminate/support: ^7.0||^9.0
This package is auto-updated.
Last update: 2024-09-13 19:35:39 UTC
README
自动为静态路由创建和链接关键CSS。
支持Laravel 7.*
安装
通过composer要求该包
composer require campaigningbureau/critical-laravel-routes
该包会被Laravel自动发现。
用法
-
所有应该使用关键CSS的静态路由都需要命名,并将
critical
属性设置为true
Route::get('/', ['as' => 'index', 'uses' => 'ViewController@index', 'critical' => true]);
-
生成包含所有关键路由的JSON文件
php artisan critical-urls:generate
-
生成的文件需要在webpack.mix.js中导入,并在创建关键CSS时将其设置为
urls
// urls that need to be passed for critical css const criticalUrls = require('./critical-routes.json'); ... mix.criticalCss({ enabled: mix.inProduction(), paths: { base: 'http://your-website.com', templates: 'public/css/' }, urls: criticalUrls, options: { minify: true, }, });
在生成CSS时,为每个定义的路由创建一个CSS文件并保存。
-
自动将关键CSS文件的内容(如果存在)导入blade模板中作为内联样式
{!! \CriticalLaravelRoutes::inlineCriticalCss() !!}
或者,可以通过以下方式链接关键CSS文件:
{!! \CriticalLaravelRoutes::linkCriticalCss() !!}
这可以安全地用于每个现有路由,因此最好将其放在基本布局中。如果没有找到路由的关键CSS文件,则不显示任何内容。
配置
可以通过发布配置文件来更改配置
$ php artisan vendor:publish --provider="CampaigningBureau\CriticalLaravelRoutes\CriticalLaravelRoutesServiceProvider"
可以配置生成的JSON文件名称和关键CSS文件后缀。