Sass CompileError при импорте исходного кода Materialise: карта Sass "не является допустимым значением CSS" - PullRequest
0 голосов
/ 24 апреля 2018

Я пытаюсь написать файл SCSS, dashboard.scss, который содержит импорт

@import "../../../lucy_web/static/stylesheets/mixins";

, где _mixins.scss, в свою очередь, содержит импорт исходного кода Materialise v1.0.0beta:

@import "vendor/materialize_v1";

Однако, когда я добавляю этот импорт, я получаю CompileError, что Sass map $base "не является допустимым значением CSS":

CompileError at /dashboard/experts
Error: ("base": #009688, "lighten-5": #e0f2f1, "lighten-4": #b2dfdb, "lighten-3": #80cbc4, "lighten-2": #4db6ac, "lighten-1": #26a69a, "darken-1": #00897b, "darken-2": #00796b, "darken-3": #00695c, "darken-4": #004d40, "accent-1": #a7ffeb, "accent-2": #64ffda, "accent-3": #1de9b6, "accent-4": #00bfa5) isn't a valid CSS value.
        on line 152 of lucy_web/static/stylesheets/vendor/components/_color-variables.scss
>> $teal: (
   -------^

Я использую версию Sass «Bleeding Edge», поэтому я ожидаю, что это сработает:

(venv) Kurts-MacBook-Pro-2:stylesheets kurtpeek$ sass --version
Sass 3.5.5 (Bleeding Edge

Есть идеи, почему SCSS не компилируется?

1 Ответ

0 голосов
/ 24 апреля 2018

Я полагаю, что это произошло из-за «конфликта имен», как описано в https://github.com/mkhairi/materialize-sass/issues/81. На самом деле SCSS также содержит некоторый «устаревший» код, который импортирует отдельные компоненты более старой версии Materialize:

@import "../../../lucy_web/static/stylesheets/partials/colors";
@import "../../../lucy_web/static/stylesheets/partials/mixins";
@import "../../../lucy_web/static/stylesheets/partials/variables";

Файл SCSS 'colors' также определяет $base, и, по-видимому, переопределение приводит к CompileError. Я решил эту проблему, переместив этот конкретный миксин в отдельный _mixins.scss в текущем каталоге, не импортируя исходный код Materialise, и упростив импорт следующим образом:

@import "mixins";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...