我有很多scss文件整齐地组织到文件夹中并通过@import相互链接,我需要在运行时将它们编译到服务器端的css中。其中一个文件[application.scss]链接到所有文件,然后通过大量的@import链接到所有其他scss文件。所以我只需要将application.scss传递给这两个库,他们应该完成其余的工作。
我一直在使用这个https://github.com/leafo/scssphp PHPSCSS并且它工作得非常好,直到我开始遇到错误“undefined mixin X / Y / Z”,但后来我意识到我使用的scss文件已经使用罗盘然后让我使用这个https://github.com/leafo/scssphp-compass PHPSCSS-COMPASS与这段代码/示例完美地工作:
require "compass.inc.php";
require "scss.inc.php";
$scss = new scssc();
new scss_compass($scss);
echo $scss->compile('
@import "compass";
.shadow {
@include box-shadow(10px 10px 8px red);
}
');
问题是,在.shadow {@include box-shadow( 10px 10px 8px red); }
的地方将所有scss代码作为字符串传递对我来说不实际也不可行
我需要传入application.scss文件而不是scss代码片段。
我试过这样做,但它没有用:
require "compass.inc.php";
require "scss.inc.php";
$scss = new scssc();
new scss_compass($scss);
echo $scss->compile('
@import "compass";
"application.scss"
');
这也不起作用:
$scss = new scssc();
new scss_compass($scss);
$server = new scss_server("sass",null,$scss);
$server->serve();
也没有这样做:
$scss = new scssc();
new scss_compass($scss);
$scss->setImportPaths("sass/");
echo $scss->compile('@import "compass"');
echo $scss->compile('@import "application.scss"');
有人可以帮忙吗?