gulp. ошибка при компиляции sass

275
22 июля 2017, 09:16

Доброго времени суток, форумчане.

Столкнулся с неприятной ошибкой при использовании gulp для сборки проекта . Текст самой ошибки:

gulp-notify: [Error running Gulp] app\sass\main.sass
Error: File to import not found or unreadable: media.
   Parent style sheet: G:/MeraxeS/decstop/start-template/app/sass/main.sass
    on line 395 of app/sass/main.sass
>> @import "media";
  ^

Погуглив данный вопрос, к сожалению, не нашел понятного мне решения. Ошибка появляется при изменении только импортируемых файлов. Как в данном случае media.sass. При редактировании основного main.sass ошибка не возникает. Если правильно понял, проблема скорее всего в том, что таск watch пытается получить доступ к файлу раньше, чем тот успевает сохраниться на диске.

Пишут что есть какой-то хак с использованием setTimeOut или можно поработать с опциями плагина gulp-watch, но как применить это в моем случае не соображу, в документации ничего похожего не нашел, к своему стыду плохо разбираюсь в js.

Опытные кодеры, подскажите, что нужно поправить в коде моего gulpfile.js, чтобы компиляция проходила без ошибки?!

Код представлен ниже. Заранее благодарю за помощь.

gulp.task('sass', function() {
  return gulp.src('app/sass/**/*.sass')
  .pipe(sass({outputStyle: 'expand'}).on("error", notify.onError()))
  .pipe(rename({suffix: '.min', prefix : ''}))
  .pipe(autoprefixer(['last 15 versions']))
  .pipe(cleanCSS())
  .pipe(gulp.dest('app/css'))
  .pipe(browserSync.reload({stream: true}));
});
gulp.task('watch', ['sass', 'js', 'browser-sync'], function() {
  gulp.watch('app/sass/**/*.sass', ['sass']);
  gulp.watch(['libs/**/*.js', 'app/js/common.js'], ['js']);
  gulp.watch('app/*.html', browserSync.reload);
});
READ ALSO
Для чего нужны классы в JavaScript?

Для чего нужны классы в JavaScript?

Читал статьи по созданию классов в JavaScript и задался вопрос: Зачем они? Для чего в ЕСМА Script 6 добавили классы? Может я не вижу того смысла и тех...

298
Как в angular 2 обновить Html

Как в angular 2 обновить Html

В общем, есть компонентВнутри конструктора пишу setinterval, там суммирую параметр компонента

310
как добавить autoprefixer?

как добавить autoprefixer?

Подскажите, как добавить в vue-cli ( webpack-simple ) autoprefixer?

208
Параметры функции по умолчанию

Параметры функции по умолчанию

В стандарте ES-2015 появилась возможность задавать параметры функции по умолчанию, выглядит это так:

270