mmanos/laravel-casset

为 Laravel 4 服务的资产管理包。

1.4.0 2014-11-12 21:03 UTC

This package is not auto-updated.

Last update: 2024-09-28 15:59:52 UTC


README

Casset 是 Laravel 4 应用程序的资产管理器。它可以做一些事情:

  • 创建一个或多个资产容器。
  • 编译 less 文件。
  • 将资产合并成一个文件。
  • 压缩输出。
  • 接受来自 Laravel 包公共目录的资产。 "vendor/package::/js/file.js"
  • 定义资产依赖。
  • 定义所有相同文件类型资产的全局依赖。
  • 定义可选的 CDN 以用于资产 URL。
  • 可选地延迟处理/合并资产到控制器中(当跨多台服务器分发页面请求时很有用)。

通过 Composer 安装

将此添加到您的 composer.json 文件中的 require 对象

"mmanos/laravel-casset": "dev-master"

之后,运行 composer install 以安装 Casset。

将服务提供者添加到 app/config/app.php 文件中的 providers 数组。

'providers' => array(
	// ...
	'Mmanos\Casset\CassetServiceProvider',
)

将类别名添加到 app/config/app.php 文件中的 aliases 数组。

'aliases' => array(
	// ...
	'Casset' => 'Mmanos\Casset\Facades\Casset',
)

最后,确保在配置文件中定义的缓存目录已创建并可由 Web 服务器写入(默认为 public/assets/cache)。

$ mkdir public/assets/cache
$ chmod -R 777 public/assets/cache
$ touch public/assets/cache/.gitignore

编辑 public/assets/cache/.gitignore。

*
!.gitignore

从 1.2.x 升级到 1.3

只需将 app/config/app.php 中的类别名更新为指向新的 Facade

'aliases' => array(
	// ...
	'Casset' => 'Mmanos\Casset\Facades\Casset',
)

用法

将资产添加到“默认”容器

Casset::add('js/jquery.js');
Casset::add('less/layout.less');

将资产添加到自定义容器

Casset::container('layout')->add('js/jquery.js');
Casset::container('layout')->add('less/layout.less');

添加一个依赖于另一个资产的资产

Casset::add('less/variables.less');
Casset::add('less/layout.less', array(), array('less/variables.less'));

添加所有资产(相同文件类型)的全局依赖

Casset::dependency('less/variables.less');
Casset::container('layout')->dependency('less/variables.less');

添加来自 Composer 包(vendorName/packageName)的资产

Casset::add('frameworks/jquery::/jquery.min.js');

渲染 HTML 标签以加载容器的资产

{{ Casset::container('default')->styles() }}
{{ Casset::container('layout')->scripts() }}

生成 CDN 服务器上的资产的 URL

<img src="{{ Casset::cdn('logo.png') }}" />