slushie / laravel-assetic
此包最新版本(v1.2.0)没有提供许可证信息。
Assetic 对 Laravel 4 的支持
v1.2.0
2015-06-26 17:48 UTC
Requires
- php: >=5.3.0
- illuminate/support: ~4.0
- kriswallsmith/assetic: 1.1.2
This package is not auto-updated.
Last update: 2024-09-24 05:10:46 UTC
README
轻松将 Assetic 集成到 Laravel 4。
主要功能
- 轻松维护组内的资产。
- 即时单文件编译、连接和压缩。
- 为每个组应用多个过滤器。
- 当输入更改时,自动更新输出文件。
- 使用
artisan asset:warm预编译资产。
用法
将以下内容添加到您的 composer.json 文件中
"require": { "laravel/framework": "4.0.*", "slushie/laravel-assetic": "dev-master", "lmammino/jsmin4assetic": "1.0.0", "leafo/lessphp": "0.4.0" }
运行 composer update 后,您需要在您的 app/config/app.php 文件中添加服务提供者(并可选择别名 Asset 门面)
'providers' => array( ... 'Slushie\LaravelAssetic\LaravelAsseticServiceProvider', ... ), 'aliases' => array( ... 'Asset' => 'Slushie\LaravelAssetic\Facades\AssetFacade', ... ),
更新您的应用程序配置后,生成包配置
php artisan config:publish slushie/laravel-assetic
现在 laravel-assetic 配置文件将在以下位置可用
app/config/packages/slushie/laravel-assetic/config.php
最后,编辑配置文件以定义您的资产。您可以定义多个组,每个组都有不同的过滤器和资产。
定义过滤器
过滤器在包配置文件中定义。
'filters' => array( 'css_min' => 'Assetic\Filter\CssMinFilter', 'css_import' => 'Assetic\Filter\CssImportFilter', 'css_rewrite' => 'Assetic\Filter\CssRewriteFilter', 'embed_css' => 'Assetic\Filter\PhpCssEmbedFilter', 'less_php' => 'Assetic\Filter\LessphpFilter', 'js_min' => 'Assetic\Filter\JSMinFilter', 'coffee_script' => 'Assetic\Filter\CoffeeScriptFilter', 'yui_js' => function () { return new Assetic\Filter\Yui\JsCompressorFilter('yui-compressor.jar'); }, ),
将资产添加到组中
每个组定义 assets 和 filters 作为输入,以及应包含在视图中的 output 文件。
'groups' => array( 'main_js' => array( 'filters' => array( 'js_min', ), 'assets' => array( 'jquery', // Named asset defined below 'assets/js/common/search.js', // Single file 'assets/js/coolarize/*js', // Folder inclusion ), 'output' => 'scripts.js', // Writable output relative to public_path() ), ),
在视图中使用资产
定义后,您的组可以通过 Asset 门面在视图中访问。要链接到 main_js 组,您可以使用以下 Asset::url() 方法
<script src="<?php echo Asset::url('main_js'); ?>"></script>
这将输出资产文件的 URL(在本例中为 /scripts.js)。
当页面加载时,Assetic 将生成文件,连接所有文件并运行定义的过滤器。
您还可以通过 artisan 命令生成资产输出文件
php artisan asset:warm
当然,这也可以作为一个 composer post-install 命令在部署时生成资产。
更多信息
通过阅读源代码(已完全文档化)或您可以在 https://github.com/slushie/laravel-assetic/issues 上提出问题来获取更多信息