nickdekruijk / minify
一个用于自动压缩 CSS、SCSS 和 JavaScript 的 Laravel 包
Requires
- php: >=7.2.0
- scssphp/scssphp: ^1.0
- tedivm/jshrink: ^1.3
This package is auto-updated.
Last update: 2024-08-29 05:07:23 UTC
README
一个简单的包,可以动态压缩 CSS/SCSS 和 JavaScript,无需使用 Laravel Mix 或 Webpack 等工具。它将所有样式表文件或 JavaScript 文件合并成一个单一、压缩的文件,并使用 filemtime() 简单但有效的缓存破坏策略。
版本 2 是一个全新的包 (版本 1 在这里存档),使用 scssphp/scssphp 和 tedivm/jshrink。由于 minify 现在用 scssphp 替换了 natxet/cssmin,因此现在也可以编译 SASS/SCSS 代码了!
安装
首先使用 composer 安装此包。
composer require nickdekruijk/minify
从 1.x 升级
升级时,将项目的 composer.json 中的 nickdekruijk/minify 替换为至少版本 "^2.0",并运行 composer update
。
如果您使用 .gitignore 忽略 js/builds 和 css/builds 中的旧构建,请记得从 .gitignore 文件中删除它们,并删除所有过时的构建 .css 和 .js 文件。
您可能还需要更改代码/视图中的 Minify::stylesheet 和 Minify::javascript 调用,因为路径名可能会根据您的配置而更改。
Laravel 安装
如果默认设置不满足您的需求,请发布配置文件
php artisan vendor:publish --provider="NickDeKruijk\Minify\MinifyServiceProvider"
样式表
// app/views/hello.blade.php <html> <head> ... {!! Minify::stylesheet(['lightbox.css', 'fonts.css', 'styles.css']) !!} </head> ... </html>
JavaScript
// app/views/hello.blade.php <html> <body> ... {!! Minify::javascript(['lazyload.min.js', 'scripts.js']) !!} <!-- Or: --> {!! Minify::javascript(['https://cdn.jsdelivr.net.cn/npm/vanilla-lazyload@12.4.0/dist/lazyload.min.js', 'scripts.js') !!} </body> </html>
配置
查看配置文件 /config/minify.php