massef
@massef

Gulp.js не компилируется файл?

Файлы разбиты на два типа, с нижним подчеркиванием в начале имени файла и без, первые соответственно не компилируются в итоговый билд, так как они импортятся в другие файлы.
Проблема в том, что при изменении в этих файлах (с нижним подчеркиванием), релоад страницы срабатывает но изменений не видно.
Если вывести debag в таске, то видно что изменений не происходит.
Если закоментировать '!src/less/**/_*.less', то изменения видны, но в билде теперь находятся файлы с нижним подчеркиванием.
Я могу конечно пройтись после компиляции по билду и удалять все файлы с подчеркиванием, но мне кажется есть решение получше.
Подскажите пожалуйста как заставить попадать изменения в игнорируемых файлах в билд?
gulp.task('less', function () {
    return gulp.src([
       'src/less/**/*.less',
       '!src/less/**/_*.less' // игнорирование файлов с нижним подчеркиванием
    ], {since: gulp.lastRun('less')}) // сборка только измененых файлов
        .pipe(debug({title: 'end less'}))
        .pipe(less()).on('error', notify.onError(function(err){
            return {
                title: 'error less',
                message: err.message
            };
        }))
        .pipe(gulp.dest('build/css'));
});


gulp.task('watch', function() {
  gulp.watch('src/less/**/*.less', gulp.series('less'));
});
  • Вопрос задан
  • 311 просмотров
Пригласить эксперта
Ответы на вопрос 1
Zoxon
@Zoxon
Веб-разработчик
Вот так можно, но файлы глубже src/less/не будут попадать в итоговый файл если только они не импортированны.
[
       'src/less/*.less',
       '!src/less/**/_*.less' // игнорирование файлов с нижним подчеркиванием
]


В противном случае уберите _*.less из папки src/less/на уровень выше
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы