2

我正在使用来自 http://leafo.net/lessphp/的lessphp

有些文件根据条件不应该编译

风格.less

我有:

@import "@{bootstrap}";
@import "layout.less";
@import "grid.less";
@import "color.less";
@import "@{fontawesome}";
@import "@{vars}"; 

和更少的 var 在 php

if($bootstrap){
    $less->setVariables(array(
      "bootstrap"   => "'bootstrap.less'",
      "fontawesome" => "'font-awesome.less'",
      "vars"        => "'variables.less'"
    ));
}

这很好用,只是当 $bootstrap 不存在时

我的 css 文件以

@import "";@import "";@import "";@import "";...

在头上,

如何将其转换为实际的 lessphp var

@import "bootstrap.less";

并在我的较少文件中使用

@{bootstrap} 

反而

@import "@{bootstrap}";

所以当 boostrap 不存在时,我不会在 css 文件中以空 @import 结束。

我试过了

 "bootstrap"    => "'@import "bootstrap.less";'"

但它没有返回任何东西

任何帮助表示赞赏

4

1 回答 1

0

我看不出可以使用更少的变量来管理这样的导入。即使 less 编译器在编译期间正确解析了字符串,它也很可能不会触发实际的导入。

如果您将管理导入的逻辑完全留给 PHP,您可以根据配置生成导入语句列表并解析它们,而无需在较少的文件中导入。

于 2012-10-30T12:18:15.520 回答