noroman / phpack
v0.0.2
2017-12-01 17:43 UTC
Requires
- leafo/scssphp: ^0.7.1
- tedivm/jshrink: ^1.2
- tholu/php-packer: ^0.2.0
This package is auto-updated.
Last update: 2024-08-29 04:33:53 UTC
README
在 src 风格目录下创建 build.json 文件
例如,
{ "common": [ "3", "2", "1" ], "admin": [ "4", "import/5", "1" ], "personal": [ "3", "2", "4" ] }
其中键(common
,admin
,personal
)是构建 css 的文件名。数组是 scss
文件名。按必要的顺序列出。不要使用扩展名。默认扩展名为 scss
。
使用方法
// ... $isProduction = false; // or true $cp = new CssPack( '/scss/', // абсолютный путь к файлам scss '/web/assets/css/' // абсолютный путь к сборкам css ); $cp->setProduction($isProduction); // путь к скриптам для web-страниц $cp->setRelativeWebPath('/assets/css/'); // получим путь к сборке `common` echo '<link type="text/css" href="' . $cp->compileCrunched('personal') . '">'; echo '<style>' . $cp->compileCrunched('common', true) . '</style>'; // ...
对于生产环境,检查是否有已构建的 css 文件,并返回已准备好的文件的路径。对于开发环境,每次都会重新构建文件。在部署时,需要考虑清除 css 构建以更新。
类似地,与 js 一起工作(在 src 目录下创建 js 目录的 build.json 文件等)。
// ... $isProduction = false; // or true $jp = new JsPack( '/js/', // абсолютный путь к файлам js '/dist/js/' // абсолютный путь к сборкам js ); $jp->setProduction($isProduction); // путь к скриптам для web-страниц $jp->setRelativeWebPath('/dist/js/'); echo '<script src="' . $jp->compileCrunched('admin') . '"></script>'; echo '<script>' . $jp->compileCrunched('main', true) . '</script>'; // ...