Ответы пользователя по тегу Gulp.js
  • Не могу сделать автокомпиляцию sass?

    @Val_Ery_1
    Попробуйте так:

    // Include gulp
    var gulp = require('gulp');


    // Include Plugins
    var sass = require('gulp-sass'),
        autoprefixer = require('gulp-autoprefixer'),
        cleanCSS = require('gulp-clean-css'),
        sourcemaps = require('gulp-sourcemaps');


    // Variables
    var 
      source = 'source/',
      target = 'public/',
      styles = {
        'in': source + 'assets/scss/app.scss',
        'out': target + 'assets/css/'
      },


    // SASS
    gulp.task('sass', function() {
      return gulp.src(styles.in)
        .pipe(sourcemaps.init())
        .pipe(sass())
        .pipe(autoprefixer())
        .pipe(cleanCSS())
        .pipe(sourcemaps.write('.'))
        .pipe(gulp.dest(styles.out));
    });


    Здесь в задаче sass стили берутся из assets/scss/app.scss, расставляются вендор префиксы, удаляются все пробелы/переносы строк и результат размещается в assets/css/
    При этом создается карта (sourcemaps). Штука очень полезная при разработке: в инспекторе элементов будет показываться тот scss файл, из которого правило подтягивается. Если что-то не надо - просто удалите ненужную строку.

    Отслеживание изменений:
    // Watch tasks
    gulp.task('watch', function() {
      gulp.watch(styles.in, gulp.series('sass'));
    });


    У вас, обратите внимание, в командной строке ругань о том, что задача отслеживания генерируется либо сериями, либо запуском задач параллельно. Можете просто свой массив включить в gulp.series. Саму задачу можно указать в кавычках, если ничего добавлять не будете, то можно убрать квадратные скобки
    Ответ написан