简体   繁体   中英

Gulp Live Reload Not Working

I am having issues trying to get LiveReload working with Gulp Connect plugin.

Below is my gulpfile.js

I have my html files in same directory as gulpfile.js and all sass files are imported into /sass/styles.scss from same folder (smacss) and other partial files in /sass/modules/*.scss

Help appreciated

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

gulp.task('connect', function(){
  connect.server({
    root: '.',
    livereload: true
  });
});

// keeps gulp from crashing for scss errors
gulp.task('sass', function () {
  return gulp.src('./sass/*.scss')
      .pipe(sass({ errLogToConsole: true }))
      .pipe(gulp.dest('./css'));
});

gulp.task('livereload', function (){
  gulp.src('.')
  .pipe(connect.reload());
});

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

gulp.task('default', ['connect', 'watch', 'sass']);

Not sure if your root path is working here. Can you try root: './' or just root: '/' maybe ?

And the gulp.watch and gulp.src might need files path instead of directory path. Can you try gulp.src('./*') and gulp.watch('./*') maybe ?

This ended up working for me:

    var gulp = require('gulp');
    var sass = require('gulp-sass');
    var sourcemaps = require('gulp-sourcemaps');
    var prefix = require('gulp-autoprefixer');
    // POST CSS
    var postcss = require('gulp-postcss');
    var cssnext = require('postcss-cssnext');
    var connect = require('gulp-connect');




    gulp.task('myStyles', function () {
    var processors = [
    cssnext()
    ];

    gulp.src('sass/*.scss')

    .pipe(sourcemaps.init())
    .pipe(sass({outputStyle: 'expanded'}))
    .pipe(sass().on('error', sass.logError))    
    .pipe(sourcemaps.write('.', {
    includeContent: false,
    sourceRoot: '../sass'
    }))
    .pipe(gulp.dest('css'))
    .pipe(connect.reload());
    });

    gulp.task('connect', function() {
    connect.server({
    livereload: true
    });
    });

    gulp.task('watchMyStyles', function() {
    gulp.watch('sass/*.scss', ['myStyles']);
    });

    gulp.task('default', ['watchMyStyles', 'connect']);
    gulp.task('server', [ 'connect']);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM