Как скомпилировать SCSS с помощью scssphp - PullRequest
0 голосов
/ 29 октября 2018

В настоящее время я пытаюсь скомпилировать некоторые SCSS, которые я получаю с помощью запроса формы. Текущий рабочий процесс заключается в том, что пользователь отправляет данные формы следующим образом:

{"$background_color":"#f3f3f3","$logo_url":"https:\/\/logo.co\/random"}

Затем я преобразовываю этот вход в следующее:

$background_color: '#f3f3f3'; $logo_url: 'https://logo.co/random'

Это должно быть допустимо для целей компиляции в CSS, поэтому я запускаю его через SCSSPHP со следующим:

$scss->addImportPath(Storage::disk('tmp')); $output = $scss->compile("@import 'test'; $statement ");

Никаких ошибок не возникает, когда я запускаю это, и вывод:

@import 'test';

Мой test.scss выглядит следующим образом:

$background_colour: 'red'
$logo_url: 'https://test.com'

.logo {
  background-image: $logo_url;
}

.background_colour {
    background-colour: $background_colour;
}

Что я здесь не так делаю?

1 Ответ

0 голосов
/ 29 октября 2018

Проблема в том, что вы не передаете строку в эту функцию. Разобрать ваш scss как строку, используя функцию file_get_contents

require_once "scssphp/scss.inc.php";

use Leafo\ScssPhp\Compiler;

$scss = new Compiler();

// Gets the content of the scss file in string format

$scss_string = file_get_contents(path/to/scss.file);

echo $scss->compile($scss_string);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...