noroman/phpack

v0.0.2 2017-12-01 17:43 UTC

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"
  ]
}

其中键(commonadminpersonal)是构建 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>';
// ...