Как правильно настроить laravel mix?

Есть проект на laravel. В нем используется vuejs компоненты. Фронт собирается mix'ом. Проблема в том, что при включенной опции extractVueStyles:true перестает работать mix.less() и mix.sass Результирующий файл собирается без основных стилей, только стили из компонентов vuejs.

Мой конфиг:

mix.options({
    extractVueStyles: true,
});

mix.js('resources/js/app.js', 'public/js')
   .js('resources/js/devices.js','public/js')
   .sass('resources/sass/app.scss', 'public/css/sass')
   .less('resources/less/app.less', 'public/css/less')
    .styles([
        'public/css/sass/app.css',
        'public/css/less/app.css',
    ],'public/css/app.css')
;

Что нужно сделать, чтобы и стили из компонентов, и основные стили вставлялись в один файл css?


Ответы (1 шт):

Автор решения: Максим Власов

Судя по официальной документации mix, ключ extractVueStyles может принимать значения true/false. Но как оказалось, что еще можно указать строку:

mix.options({
    extractVueStyles: 'css/components.css',
});

Тогда в public/css (в моем случае) создастся файл со стилями компонентов.

→ Ссылка