Javascript-форум (https://javascript.ru/forum/)
-   Сборка проекта, утилиты (https://javascript.ru/forum/server-tools/)
-   -   Как настроить Gulp, чтобы он работал с двумя независимыми дирректориями? (https://javascript.ru/forum/server-tools/70441-kak-nastroit-gulp-chtoby-rabotal-s-dvumya-nezavisimymi-dirrektoriyami.html)

Walk 05.09.2017 11:26

Как настроить Gulp, чтобы он работал с двумя независимыми дирректориями?
 
Сразу скажу, что ни в js, ни в Gulp не разбираюсь.
Час смотрел эти уроки, но ответа на свой вопрос не нашел.

На сайте есть две части - фронт-энд и бек-энд (админка). В текущей настройке Gulp смотрит только на изменения фронт-энда:

var gulp = require('gulp');
var scss = require('gulp-sass');

gulp.task('scss', function(){
  return gulp.src('web/theme/sass/style.scss')
   .pipe(scss(
   ).on('error', scss.logError))
   .pipe(gulp.dest('web/theme/css'));
});

gulp.task('default',function(){
  gulp.watch('web/theme/sass/**/*.scss', ['scss']);
});


Необходимо добавить дополнительные дирректории - где смотреть за изменениями, и где сохранять результат, примерно так:

gulp.task1('scss', function(){
  return gulp.src('web/theme/sass/style.scss')
   .pipe(scss(
   ).on('error', scss.logError))
   .pipe(gulp.dest('web/theme/css'));
});

gulp.task1('default',function(){
  gulp.watch('web/theme/sass/**/*.scss', ['scss']);
});

gulp.task2('scss', function(){
  return gulp.src('admin/sass/style.scss')
   .pipe(scss(
   ).on('error', scss.logError))
   .pipe(gulp.dest('admin/css'));
});

gulp.task2('default',function(){
  gulp.watch('admin/sass/**/*.scss', ['scss']);
});


Но как это написать корректно?

destus 05.09.2017 11:44

Walk,
gulp.task('scss:web', function(){
  return gulp.src('web/theme/sass/style.scss')
   .pipe(scss(
   ).on('error', scss.logError))
   .pipe(gulp.dest('web/theme/css'));
});

gulp.task('scss:admin', function(){
  return gulp.src('admin/sass/style.scss')
   .pipe(scss(
   ).on('error', scss.logError))
   .pipe(gulp.dest('admin/css'));
});

gulp.task('default',function(){
  gulp.watch('web/theme/sass/**/*.scss', ['scss:web']);
  gulp.watch('admin/sass/**/*.scss', ['scss:admin']);
});

Walk 05.09.2017 13:44

Спасибо! Вроде работает)


Часовой пояс GMT +3, время: 12:37.