cypresslab / less-elephant-bundle
集成 LessElephant 到 Symfony2
Requires
- php: >=5.3.0
- cypresslab/less-elephant: <=1.0.0
This package is auto-updated.
Last update: 2024-08-29 03:31:26 UTC
README
一个用于在 Symfony2 项目中使用 LessElephant 库的包。
该包在每次请求时扫描您的 less 项目,并检查是否需要重新编译。它处理依赖项,因此您可以在没有问题的情况下使用带有 @import 的 less。您不再需要 JavaScript 或手动执行 lessc。
在 Symfony2 中集成 Bootstrap 并动态编译 less
配置
将配置添加到您的配置文件中(针对开发环境)
app/config_dev.yml
cypress_less_elephant:
less_binary_path: "/usr/local/bin/lessc"
less_projects:
my-first-project:
source_folder: %kernel.root_dir%/../src/Cypress/DemoBundle/Resources/public/bootstrap/less
source_file: bootstrap.less
destination_css: %kernel.root_dir%/../src/Cypress/DemoBundle/Resources/public/bootstrap/css/bootstrap.css
another-project:
.....
force_compile: ~
less_binary_path(可选)是您的 lessc 二进制文件的路径。LessElephant 尝试通过 "which lessc" 来查找它。因此,如果您在 Windows 上,则需要此配置
less_projects(至少 1 个)为您的每个 less 项目定义一个条目。所有三个参数都是必填项
-
source_folder 存储所有 less 文件的文件夹
-
source_file 主 less 文件。通常这是一个包含许多 @import 指令的文件
-
destination_css 目标 CSS 文件。 此文件需要可由 Web 服务器用户写入(例如,在 Linux 上为 www-data)
force_compile(可选)默认值:false。如果为 true,我们将强制对每个请求进行编译。
将样式表添加到您的模板中
assetic
{% stylesheets filter="yui_css" "@CypressDemoBundle/Resources/public/bootstrap/css/bootstrap.css" %} <link href="{{ asset_url }}" type="text/css" rel="stylesheet" /> {% endstylesheets %}
不使用 assetic
<link href="{{ asset('bundles/cypressdemo/bootstrap/css/bootstrap.css') }}" type="text/css" rel="stylesheet" />
享受吧!
它是如何工作的
该包注册了一个事件监听器,在每次请求时检查在 config_dev.yml 文件中定义的项目是否处于 "clean" 状态或需要重新编译。
如果项目不需要重新编译,它将为 symfony 添加一个非常小的开销,只是检查文件所需的时间。
阅读 LessElephant README 了解其他有用信息。