mishak / web-resource-management
用于脚本和样式的管理工具(使用Nette框架)
1.4
2013-04-10 23:34 UTC
Requires
- php: >=5.3.0
- nette/nette: >=2.0.7
README
主要目的是通过将定义移动到模块的配置(和自动生成内容)来简化脚本和样式的资源管理。
实验性! 可能会有向后不兼容的问题。 这仍然更像是一个草稿而不是真正的代码,所以请多多包涵。
安装
将以下要求添加到您的 composer.json
中 "mishak/web-resource-management": "dev-master"
。目录 %WWW_DIR%/generated
必须可以被服务器写入。目前脚本必须在 %WWW_DIR%/js
目录下。
引导
$configurator = new Nette\Config\Configurator;
// after the line above
Mishak\WebResourceManagement\DI\WebResourceManagementExtension::register($configurator);
// before the line bellow
$container = $configurator->createContainer();
在模板中
<head>
...
{include ../../libs/mishak/web-resource-management/@styles.latte}
</head>
<body>
...
{include ../../libs/mishak/web-resource-management/@scripts.latte}
</body>
功能
- 依赖管理
脚本
- 翻译
- 按脚本配置
- 根据 debugMode 和配置使用脚本的公共、压缩和原始版本
样式
- 支持 less(必须在路径中有
lessc
) - 使用新的 URL 将资源提取到新文件夹以防止缓存问题
- 重命名文件以防止缓存问题
- 生成压缩文件 - 可以由 nginx 使用
gzip_static on;
来使用
用法
在 config.neon 中
resources:
styles:
bootstrap:
filename: %appDir%/../libs/twitter/bootstrap/less/bootstrap.less
bootstrap.responsive:
filename: %appDir%/../libs/twitter/bootstrap/less/responsive.less
depends: bootstrap
scripts:
jquery:
filename: jquery-1.8.2.js
public: //ajax.googleapis.ac.cn/ajax/libs/jquery/1.8.2/jquery.js
bootstrap:
filename: bootstrap.js
minified: bootstrap.min.js
depends: jquery
main:
filename: main.js
depends: [ jquery, bootstrap ]
- 属性
depends
是可选的,默认为空数组 ([ ]
)
脚本
minified
版本是可选的- 至少定义
filename
或public
- 之间的切换会自动按此顺序进行(
productionMode = TRUE
)public
>minified
>filename
(《debugMode = TRUE》)