panique / laravel-sass
每次运行应用程序(开发阶段)时,都会编译您的 Sass .scss 文件到 .css
Requires
- php: >=5.3.0
- leafo/scssphp: v0.0.14
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 install
或 composer 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_compressed
。scss_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)。
其他项目
- https://github.com/panique/huge(一个带有完整登录系统的框架)
- https://github.com/panique/mini2(基于 Slim 的裸应用)
- https://github.com/panique/mini(一个超级简单的裸应用)
- https://github.com/panique/php-sass(纯 PHP 编译 SASS)
- https://github.com/panique/php-long-polling(使用 PHP 的长轮询,极其简单)
- 我的博客 DEV METAL: http://www.dev-metal.com
许可证
许可协议为 MIT。完全免费用于个人或商业项目。
支持
如果您认为这个脚本很有用,那么请考虑通过在 Host1Plus 或 DigitalOcean 租赁您的下一个服务器来支持本项目。