2015-02-13 2 views
3

У меня есть отдельный файл css/less для моей страницы входа/входа. Как сказать gulp, что он должен скомпилировать два файла для меня? Вот мой подход, который генерирует к сожалению только один файл для меня.Laravel 5 Elixir + gulp mix and version multiple css или меньше файлов

elixir(function (mix) { 
    // only for the landing-page 
    mix.less('landing.less') 
     .version('css/landing.css'); 

    // for the application, after login 
    mix.less('app.less') 
     .version('css/app.css'); 
}); 

На моей странице приземления, я предполагал, что-то вроде этого:

<link rel="stylesheet" href="{{ elixir("css/landing.css") }}"> 

но папка сборки/CSS показывает только мой файл CSS/app.css. :(

ответ

11

Вы не можете назвать mix.version() дважды:

просто сделать:

elixir(function (mix) { 

    mix.less('landing.less'); 

    // for the application, after login 
    mix.less('app.less'); 

    mix.version([ 
     'css/app.css', 
     'css/landing.css' 
    ]); 

}); 

Это создаст два файла app.css и landing.css для вас в /public/build/css

+0

Хм, ваш пример не работает для меня, но вы дали мне хорошую идею! – wiesson

+0

жаль, что я забыл включить их в квадратные скобки mix.version (['css/app.css', 'css/landing.css']); – Digitlimit

+2

Одна из проблем заключается в том, что .map-файлы не копируются в папку/public/build/после использования mix.version(). – tholu

2

Спасибо Digitlimit ответ, я смог решить свою проблему. Я вставил файлы в виде массива, и он просто работает :)

elixir(function (mix) { 
    mix.less(['landing.less', 'app.less']); 
    mix.version(['css/app.css', 'css/landing.css']); 
}); 
+0

жаль, что я забыл включить их в квадратные скобки 'mix.version (['css/app.css', 'css/landing.css']);' :( – Digitlimit

0

попробовать этот

elixir(function(mix) { 
mix.styles([ 
    'normalize.css', 
    'main.css' 
], 'public/assets/css/site.css'); 
}); 
Смежные вопросы