bradstinson/assets

一个简单的资源库。合并和压缩您的JS和CSS资源

1.1.0 2014-12-10 15:35 UTC

This package is not auto-updated.

Last update: 2024-09-28 14:27:44 UTC


README

Build Status

Assets 是一个CSS/JavaScript压缩和合并库。然而,与其他大多数库(依赖于Assetic)不同,这个库采用了一种更简单的方法。

Assets 支持压缩和合并样式表和脚本,以减少加载特定页面所需的HTTP请求的数量和大小。生成的文件也将被缓存,这样可以防止应用程序在每次新请求时都生成相同的文件。

基本用法

CSS

可以使用以下命令添加CSS文件,其中 "file1.css" 和 "file2.css" 是您想要包含的CSS文件,它们位于 assets/css/file1.css 和 assets/css/file2.css。

Assets::css('file1.css');
Assets::css('file2.css');

您还可以将文件作为数组提交。

Assets::css(array('file1.css', 'file2.css'));

Assets 将压缩CSS文件并将它们合并成一个文件(写入 'assets/cache' 目录)。然后返回适当的标签。要将此文件包含在您的页面中,请使用以下

echo Assets::renderCss();
/*
Returns something like:
<link rel="stylesheet" href="/assets/cache/3cf89b9f723e22c1caf26f8d4d1fdc31.css">
*/

LESS

可以使用以下命令添加Less文件,其中 "file1.less" 是您想要编译的Less文件,它位于 assets/css/file1.less。

Assets::less('file1.less');

您也可以将多个文件作为数组提交。

Assets::css(array('file1.less', 'file2.less'));

您的Less文件将自动编译并与CSS文件合并成一个文件(写入 'assets/cache' 目录)。然后返回适当的标签。

JS

可以使用以下命令添加JavaScript文件,其中 "file1.js" 和 "file2.js" 是您想要包含的javascript文件,它们位于 assets/js/file1.js 和 assets/js/file2.js。

Assets::js('file1.js');
Assets::js('file2.js');

您还可以将文件作为数组提交。

Assets::js(array('file1.js', 'file2.js'));

Assets 将压缩JS文件并将它们合并成一个文件(写入 'assets/cache' 目录)。然后返回适当的标签。要将此文件包含在您的页面中,请使用以下

echo Assets::renderJs();
/*
Returns something like:
<script src="/assets/cache/9cf2803d8f075cb7d1ad31940738f35e.js"></script>
*/

CoffeeScript

可以使用以下命令添加CoffeeScript文件,其中 "file1.coffee" 是您想要编译的CoffeeScript文件,它位于 assets/js/file1.coffee。

Assets::coffee('file1.coffee');

您也可以将多个文件作为数组提交。

Assets::coffee(array('file1.coffee', 'file2.coffee'));

您的CoffeeScript文件将自动编译并与JS文件合并成一个文件(写入 'assets/cache' 目录)。然后返回适当的标签。

如果您想同时生成CSS和JS标签,可以调用

echo Assets::render();
/*
Which will return:
<link rel="stylesheet" href="/assets/cache/3cf89b9f723e22c1caf26f8d4d1fdc31.css">
<script src="/assets/cache/9cf2803d8f075cb7d1ad31940738f35e.js"></script>
*/

配置

默认情况下,此库假设以下目录结构

assets/
   css/
   js/
   cache/
   

但是,现在您可以根据需要调整资源目录的路径

Assets::setPath('public/assets/');

基础URL

Assets::setBaseurl('/');

分组

此库目前不支持分组。这是因为我在工作的项目中不需要它。如果收到足够的请求,这可能在未来的版本中添加。

感谢

此资源库受到了以下库的启发并使用了它们的组件

贡献

如果您有任何问题/投诉/建议,请告诉我,我会看看是否能在时间允许的情况下实现它们。此外,也欢迎提交pull请求。