V
V
Valeria2019-12-18 23:57:14
gulp.js
Valeria, 2019-12-18 23:57:14

Why is the gulp serve command not running?

you have to run tasks one by one. this is stupid, but otherwise the build does not work. who can help me find the error. Thank you

const gulp = require('gulp');
const sass = require('gulp-sass');
const plumber = require('gulp-plumber');
const autoprefixer = require('gulp-autoprefixer');
const browserSync = require('browser-sync').create();
const sourceMaps = require('gulp-sourcemaps');

gulp.task('sass', function () { // таск scss
    return gulp.src('scss/style.scss')
        .pipe(plumber()) // если будут ошибки в style.scss - не отключаться, а работать далее
        .pipe(sourceMaps.init())
        .pipe(sass())
        .pipe(autoprefixer({
            browsers: ['last 2 versions']
        }))
        .pipe(sourceMaps.write())
        .pipe(gulp.dest('build/css')) // будет создаваться папка build, внутри нее будет создаваться папка css и туда будет ложиться файл style.css
        .pipe(browserSync.reload({stream: true})); // перезапускать браузер, при изменениях в таске sass
});

gulp.task('html', function () {
    return gulp.src('*.html')
        .pipe(gulp.dest('build'))
        .pipe(browserSync.reload({stream: true}));
});

gulp.task('serve', function () {
    browserSync.init({
        server: "build"
    });
    gulp.watch("scss/**/*.scss", gulp.parallel("sass")); // следить за всеми файлами в папке scss и при изменении запускать таск под названием scss
    gulp.watch("*.html", gulp.parallel("html")); // тоже самое, только с таском html
});

// данный код не запускается командой gulp serve. приходится перечислять все три таска поочередно.

Answer the question

In order to leave comments, you need to log in

2 answer(s)
R
Roma Zvarich, 2019-12-19
@lerabe

Add a task that will run the necessary commands in sequence for you.
This is a common practice.
And to start, just use the command gulpin the console

const gulp = require('gulp');
const sass = require('gulp-sass');
const plumber = require('gulp-plumber');
const autoprefixer = require('gulp-autoprefixer');
const browserSync = require('browser-sync').create();
const sourceMaps = require('gulp-sourcemaps');

gulp.task('sass', function() { // таск scss
  return gulp.src('scss/style.scss')
    .pipe(plumber()) // если будут ошибки в style.scss - не отключаться, а работать далее
    .pipe(sourceMaps.init())
    .pipe(sass())
    .pipe(autoprefixer({
      browsers: ['last 2 versions']
    }))
    .pipe(sourceMaps.write())
    .pipe(gulp.dest('build/css')) // будет создаваться папка build, внутри нее будет создаваться папка css и туда будет ложиться файл style.css
    .pipe(browserSync.reload({
      stream: true
    })); // перезапускать браузер, при изменениях в таске sass
});

gulp.task('html', function() {
  return gulp.src('*.html')
    .pipe(gulp.dest('build'))
    .pipe(browserSync.reload({
      stream: true
    }));
});

gulp.task('serve', function() {
  browserSync.init({
    server: "build"
  });
  gulp.watch("scss/**/*.scss", gulp.parallel("sass")); // следить за всеми файлами в папке scss и при изменении запускать таск под названием scss
  gulp.watch("*.html", gulp.parallel("html")); // тоже самое, только с таском html
});

// данный код не запускается командой gulp serve. приходится перечислять все три таска поочередно.

gulp.task('default', gulp.series('sass', 'html', 'serve'));

I
inkShio, 2019-12-19
@inkShio

Maybe tyk-tyk will help

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question