Laravel Mix, не объединяющий стили

Это мой первый опыт работы с Laravel Mix, NodeJS и NPM. Я пытался следовать документации Laravel и считаю, что делаю это правильно, но кто знает.

Я пытаюсь объединить несколько файлов CSS в один.

webpack.mix.js

mix.combine([
    'resources/assets/css/components.css',
    'resources/assets/css/plugins.css',
    'resources/assets/css/layout.css',
    'resources/assets/css/default.css',    
    'resources/assets/css/custom.css'
], 'public/css/all.css');

if (mix.inProduction()) {
    mix.version();
}

Выполнить

npm run dev

Кажется, он работает нормально и выводит следующее:

СДЕЛАНО Успешно скомпилировано за 92 мс
11:11:33 AM

Дата создания: 23.11.2018, 11:11:33 Размер ресурса Чанки Имена блоков /css/all.css 0 байт [передано] Точка входа mix = mix.js

Файл all.css создается там, где я ожидал, но он пуст. Что я делаю неправильно? Спасибо!


person Seán McCabe    schedule 22.11.2018    source источник
comment
Кажется, это известная проблема с webpack при использовании нескольких файлов css github.com/webpack-contrib/mini-css-extract-plugin/issues/147   -  person Clément Baconnier    schedule 27.11.2018


Ответы (1)


Я считаю, что комбинировать работает только для уменьшения и объединения файлов js. Для css вам нужно использовать стили

 .styles(['inputA.css', 'inputB.css'], 'minified-output.css')

Я не нашел этого в документации, но попробовал, и он работает. Кредиты: https://stackoverflow.com/a/48312321/2311074

person Adam    schedule 04.02.2021
comment
Перешел на более позднюю версию Laravel, и это не проблема с использованием комбайна. Надеюсь, это поможет кому-то, если они используют старую версию - person Seán McCabe; 10.02.2021