Проблема с эликсиром Laravel

Я на L5, использую laravel-elixir, и иногда он таинственным образом работает, но в большинстве случаев это не так. Gulp обнаруживает изменения файлов, но новые файлы не изменяются.

Вот мой gulpfile.js:

process.env.DISABLE_NOTIFIER = true;

var elixir = require('laravel-elixir');

elixir(function(mix) {
    mix.less('admin.less')
      .less('app.less')
      .scripts([
         'vendor/isotope/dist/isotope.pkgd.min.js',
         'js/jQuery.neatDataTables.js',
         'vendor/transparency/dist/transparency.min.js',
         'js/app.js',
    ], 'public/js/app.js', 'resources/assets');
});

И эта структура каталогов:

структура каталогов

В общем, иногда работает, а иногда нет. Это очень расстраивает. Я пробовал запускать gulp и gulp watch и вот что выдает:

вывод глотком

Если я изменю gulpfile на это:

elixir.function(mix) {
    mix.less('admin.less');
}

вроде работает безотказно.


person Petter Thowsen    schedule 27.02.2015    source источник
comment
Кроме того, не рекомендуется использовать mix.scripts() с активами, которые уже были минифицированы. Из документации -> Если вы собираетесь объединить несколько предварительно минифицированных библиотек поставщиков, таких как jQuery, вместо этого рассмотрите возможность использования mix.combine(). Это объединит файлы, опуская исходную карту и этапы минимизации. В результате время компиляции значительно улучшится.   -  person Kenneth Stoddard    schedule 09.09.2016


Ответы (1)


Решил это, объединив два вызова в mix.less.

Итак, это:

mix.less(['app.less', 'app.less'])...

Вместо:

mix.less('app.less')
    .less('admin.less')...
person Petter Thowsen    schedule 27.02.2015