2016-07-19 15 views
0

Ich beginne mit Schluck, ich bekomme keinen Fehler, aber scheint zu gulp.watch nicht funktionieren.
Server startet und kompiliert, aktualisiert jedoch keine Änderungen.
Ich kommentiere einige Zeilen, um Aufgaben zu vereinfachen.
Knoten Version: 4.4.7
CLI-Version 1.2.2
Lokale Version 3.9.1
OS: Win7
Schluck macht keine Änderungen

mein gulpfile Js

'use strict'; 
var gulp = require('gulp'); 
var less = require('gulp-less'); 
var browserSync = require('browser-sync').create(); 
var jade = require('gulp-jade'); 
var concat = require('gulp-concat'); 

gulp.task('less', function() { 
    return gulp.src("./des/less/estilos.less") 
     .pipe(less()) 
     .pipe(gulp.dest("./prod/css/")) 
     .pipe(browserSync.stream()); 
}); 

gulp.task('less:watch', function() { 
    gulp.watch('./des/less/*.less', ['less']); 
}); 

gulp.task('templates', function() { 
    gulp.src('./des/jades/*.jade') 
    .pipe(jade({ 
     pretty: true 
    })) 
    .pipe(gulp.dest('./prod')) 
    .pipe(browserSync.stream()); 
}); 

gulp.task('scripts', function() { 
    //return gulp.src(['./lib/file3.js', './lib/file1.js', './lib/file2.js']) 
    return gulp.src('./des/js/*.js') 
    .pipe(concat('all.js')) 
    .pipe(gulp.dest('./prod/js/')) 
    .pipe(browserSync.stream()); 
}); 

gulp.task('serve', ['less','templates'], function() { 
    browserSync.init({ 
     server: "./prod", 
     port: 3000, 
     browser: ["chrome", "firefox"], 
     watchOptions : { 
      ignored : 'node_modules/*', 
      ignoreInitial : true 
     } 
    }); 
    gulp.task('watch', function() { 
    gulp.watch(["./des/jades/*.jade"], ['templates']); 
    // gulp.watch("./**/*.less", ['less']); 
    // gulp.watch("./**/*.js", ['scripts']); 
    // gulp.watch("./**/*.css").on('change', browserSync.reload); 
    gulp.watch("./prod/*.html").on('change', browserSync.reload); 
    // gulp.watch("./**/*.js").on('change', browserSync.reload); 
    }); 
}); 

// gulp.task('default', ['less','lessPublic','lessCommon','templates','serve']); 
gulp.task('default', ['less','templates', 'scripts', 'serve']); 

Vielen Dank für Ihre Hilfe

Antwort

0

Ihr Problem ist, dass Ihr var browserSync auf das create-Objekt "Browser-Sync" und Kette zeigt Das "stream" -Objekt zu bearbeiten, wird nicht funktionieren, da es keine Instanz des create-Objekts ist.

sollten Sie

ändern
var browserSync = require('browser-sync').create(); 

zu

var browserSync = require('browser-sync'); 

diese Damit Umfang an die bestehenden Objekte sollten von browserSync

browserSync.init(); 
browserSync.create(); 
browserSync.stream();