panique/laravel-sass

每次运行应用程序(开发阶段)时,都会编译您的 Sass .scss 文件到 .css

1.0 2014-11-09 01:35 UTC

This package is auto-updated.

Last update: 2024-09-13 22:53:46 UTC


README

为 Laravel 4(以及其他框架)提供自动 Sass-to-CSS 编译功能(在开发阶段)。每次运行应用程序(访问 index.php)时,laravel-sass 都会自动将 scss 文件夹中的所有 .scss 文件编译为 css 文件夹中的 .css 文件。支持 Sass(scss 语法)的最新版本和混合函数。太棒了!

安装与使用

请将以下内容添加到您的 composer.json 中,请注意,这是一个 require-dev,而不是普通的 require。这区分了真实依赖和仅用于本地开发的依赖。

"require-dev": {
    "panique/laravel-sass": "1.0"
}

将以下行添加到 Laravel 的 public/index.php 中,在 $app->run(); 之前。

SassCompiler::run("scss/", "css/");

第一个参数是您的 scss 文件夹的相对路径(创建一个),第二个参数是您的 css 文件夹的相对路径。通常,在 public 文件夹中创建这些文件夹是很有意义的。确保 PHP 可以写入 css 文件夹,可以通过以下命令给予文件夹写入权限:sudo chmod -R 777 public/css(在 /var/www 中)。注意:777 仅用于开发,在生产服务器上不需要给予该文件夹任何写入权限。

通过执行 composer installcomposer update 安装或更新您的 Composer 依赖关系,以添加 laravel-sass。Composer 默认自动安装 require-dev 中的所有内容。

重要:当您稍后部署应用程序且不想安装 require-dev 项时,请执行 composer install --no-dev(或 composer update --no-dev)。

可选功能

对于 SassCompiler::run(),有一个可选的第三个参数,它期望的是 http://leafo.net/scssphp/docs/#output_formatting 中解释的一个字符串。这定义了所需的输出。scss_formatter 是 laravel-sass 使用的标准,如果您需要最小化的 CSS 文件,请选择 scss_formatter_compressedscss_formatter_nested 用于嵌套输出,优化了可读性。

测试

为了测试是否一切正常,只需将以下内容添加到 app/views/hello.php 的头部:<link rel="stylesheet" type="text/css" href="css/style.css"> 并在您的 scss 文件夹中放置一个名为 style.scss 的文件。现在运行应用程序,并玩转 style.scss 中的 (s)css 规则,每次刷新后您都应该立即看到更改!

@import 的工作方式

现在,从其他文件导入 Sass 规则的工作方式完美。确保按正确的方式导入文件:如果文件名为 _colors.scss 并且位于基本 scss 文件夹中

@import 'colors';

如果文件名为 _colors.scss 并且位于基本 scss 文件夹的子文件夹 modules

@import 'modules/colors';

阅读官方文档以获取更多信息。

当部署 ...

.. 确保再次取消注释此行:SassCompiler::run("scss/", "css/");。此工具的未来版本将包含开发/生产开关/识别器。

使用 Sass 的最新功能

目前,php-sass 获取 leafo/scssphp 的 v0.0.14 版本(2014 年 8 月)作为编译器。对于最新功能,您可能需要一个更新的版本,所以请查看以下链接 https://github.com/leafo/scssphp/releases 并相应地编辑 composer.json。

使用的脚本

本工具使用优秀的 scssphp Sass 编译器。scssphp 支持最新的 SCSS 语法(3.2.12)。

其他项目

许可证

许可协议为 MIT。完全免费用于个人或商业项目。

支持

如果您认为这个脚本很有用,那么请考虑通过在 Host1PlusDigitalOcean 租赁您的下一个服务器来支持本项目。