• Как настроить вывод файлов gulp?

    @slpMouse Автор вопроса
    Владимир Скибин, Как тогда сделать то что мне надо?
  • Как настроить вывод файлов gulp?

    @slpMouse Автор вопроса
    Владимир Скибин, Извини за беспокойство, но эта таска не работает. Она не копирует в /dist/proj#/assets/css. Как исправить это?
    gulp.task('sass:compile', function () {
      return gulp.src('./source/**/assets/sass/**/*.sass')
        .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
        .pipe(rename({
                        suffix: '.min'
                      }))
        .pipe(gulp.dest('./dist/**/assets/css'))
  • Как настроить вывод файлов gulp?

    @slpMouse Автор вопроса
    Владимир Скибин, Можно пример.
    к примеру у меня
    gulp.task('copy', function () {
      return gulp.src(['./source/**/*.*', '!./source/assets/sass/**/*.sass'])
      .pipe(gulp.dest('./dist'));
    });

    Как мне следует поменять пути. Простите просто сам не очень понял
  • Как настроить вывод файлов gulp?

    @slpMouse Автор вопроса
    Владимир Скибин,
    /* ========== Инициализируем пакеты ========== */
    
    const gulp = require('gulp');
    const browserSync = require('browser-sync').create();
    const sass = require('gulp-sass');
    const rimraf = require('rimraf');
    const rename = require('gulp-rename');
    
    /* ========== Создаем задачу для запуска сервера ========== */
    
    gulp.task('server', function () {
      browserSync.init({
        server: {
          port: 9000,
          baseDir: './dist'
        }
      });
    
      /* ========== Устанавливаем watch на просмотр изменений любых файлов в папке dist ========== */
    
      gulp.watch('./dist/**/*').on('change', browserSync.reload);
    });
    
    /* ========== Создаем задачу для компиляции SASS ========== */
    
    gulp.task('sass:compile', function () {
      return gulp.src('./source/assets/sass/**/*.sass')
        .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
        .pipe(rename({
                        suffix: '.min'
                      }))
        .pipe(gulp.dest('./dist/assets/css'))
    });
    
    /* ========== Создаем задачу для копирования папок и фалов кроме тех которые не нужны ========== */
    
    gulp.task('copy', function () {
      return gulp.src(['./source/**/*.*', '!./source/assets/sass/**/*.sass'])
      .pipe(gulp.dest('./dist'));
    });
    
    /* ========== Создаем задачу для слежения за всеми файлами на изменение (в папка - sass, js, images, fonts, и корневой папке) ========== */
    
    gulp.task('watch', function () {
      gulp.watch('./source/assets/sass/**/*.sass', gulp.series('sass:compile'));
      gulp.watch(['./source/**/*.*', '!./source/assets/sass/**/*.sass'], gulp.series('copy'));
    });
    
    /* ========== Создаем задачу для очистки файлов продакшна ========== */
    
    gulp.task('clean', function del(cb) {
      return rimraf('./dist', cb)
    })
    
    /* ========== Создаем задачу по умолчания для запуска компиляции SASS, копирования файлов и запуска сервера ========== */
    
    gulp.task('default', gulp.series(
      'clean',
      gulp.parallel('sass:compile', 'copy'),
      gulp.parallel('watch', 'server')
    ));