Laravel Elixir объединяет файлы Sass в неправильном порядке

У меня есть три файла Sass в одном каталоге: _include.scss, app.scss и partials.scss.

И app.scss, и partials.scss имеют импорт в первой строке:

@import "include";

И в первой строке в _include.scss:

@import "node_modules/bootstrap-sass/assets/stylesheets/bootstrap";

Мой gulpfile.js выглядит так:

var elixir = require('laravel-elixir');
elixir(function(mix) {
    mix.sass([
        'app.scss',
        'partials.scss'
    ]);
});

Код Bootstrap и мой собственный код Sass объединены в один и тот же файл CSS (public/css/app.css). Единственная проблема заключается в том, что CSS Bootstrap вставляется после app.scss, поэтому любые изменения, которые я делаю, будут переопределены Bootstrap, если они конфликтуют. partials.scss вставляется правильно в нижний.

Что вызывает это? У меня, насколько я вижу, точно такие же настройки в других проектах без этой проблемы.


person Reuben Sanders    schedule 23.09.2015    source источник


Ответы (1)


Ошибка заключается в двойном выражении @import "include";:

И app.scss, и partials.scss имеют импорт в первой строке

Существует проблема однократного импорта семантики в SASS, но она до сих пор не решена. Я бы предложил включать библиотеку только в одном месте, пока проблема не будет решена.

Обновление: существует информативное сообщение в блоге по этой теме, которое может помочь вам найти подходящее решение.

person Fabian Keller    schedule 26.09.2015
comment
Я подтвержу это завтра и приму ваш ответ. Спасибо. - person Reuben Sanders; 27.09.2015