2017-09-20 2 views
1

Ich habe Probleme beim Konfigurieren meiner Schluckdatei zum Ansehen. Wenn ich den Standard-Task ausführe, führt er alle Jobs aus, die er ausführen soll. Wenn ich jedoch eine Datei hinzufüge oder Änderungen an einer der SCSS-Dateien vornimmt, wird der Job nicht ausgeführt (ich gehe auch davon aus, dass dies nicht der Fall ist) run imagemin oder js-watch).Warum warten meine Schluckaufgaben nicht auf Änderungen?

Unten ist mein schluck Datei

var pkg = require('./package.json'); 
var gulp = require('gulp'); 

const BrowserSync = require('./gulp-tasks/browser-sync'); 
const Sass = require('./gulp-tasks/sass'); 
const Scripts = require('./gulp-tasks/scripts'); 
const Svg = require('./gulp-tasks/svg-sprite'); 
const Img = require('./gulp-tasks/img-min'); 

gulp.task('browser-sync-init', BrowserSync.initialize); 
gulp.task('js-watch', ['js'], BrowserSync.reload); 
gulp.task('reload-watch', ['copy'], BrowserSync.reload); 

gulp.task('sass', Sass.build); 

gulp.task('lint', Scripts.lint); 
gulp.task('js', ['lint'], Scripts.build); 

gulp.task('copy', function(){ 
    gulp.src(`${pkg.config.themeRoot}/**/*.html`) 
     .pipe(gulp.dest(pkg.config.dist)); 
}); 

gulp.task('imagemin', Img.imgmin); 

gulp.task('svg', Svg.build); 

gulp.task('default', ['sass', 'js', 'imagemin', 'browser-sync-init'], function(){ 
    gulp.watch(`${pkg.config.scss}/**/*.scss`, ['sass']); 
    gulp.watch(`${pkg.config.scripts}/**/*.js`, ['js-watch']); 
    gulp.watch(`${pkg.config.images}/source/**`, ['imagemin']); 
}); 

Und das ist die Definition für pkg.config.scss

"scss": "wp-content/themes/grpw67000/assets/scss", 

Was könnte ich falsch gemacht?

+0

Ist dies nur für scss-Dateien oder für jeden Dateityp? – Thusitha

Antwort

2
var pkg = require('./package.json'); 
    var gulp = require('gulp'); 

    const BrowserSync = require('./gulp-tasks/browser-sync'); 
    const Sass = require('./gulp-tasks/sass'); 
    const Scripts = require('./gulp-tasks/scripts'); 
    const Svg = require('./gulp-tasks/svg-sprite'); 
    const Img = require('./gulp-tasks/img-min'); 

    gulp.task('browser-sync-init', BrowserSync.initialize); 
    gulp.task('js-watch', ['js'], BrowserSync.reload); 
    gulp.task('reload-watch', ['copy'], BrowserSync.reload); 

    gulp.task('sass', Sass.build); 

    gulp.task('lint', Scripts.lint); 
    gulp.task('js', ['lint'], Scripts.build); 

    gulp.task('copy', function(){ 
     gulp.src(`${pkg.config.themeRoot}/**/*.html`) 
      .pipe(gulp.dest(pkg.config.dist)); 
    }); 

    gulp.task('imagemin', Img.imgmin); 

    gulp.task('svg', Svg.build); 

    // Watch task for gulp 
    gulp.task('watch', function() { 
     gulp.watch(`${pkg.config.scss}/**/*.scss`, ['sass']); 
     gulp.watch(`${pkg.config.scripts}/**/*.js`, ['js-watch']); 
     gulp.watch(`${pkg.config.images}/source/**`, ['imagemin']); 
    }); 

    gulp.task('default', ['sass', 'js', 'imagemin', 'browser-sync-init', 'watch']); 

Versuchen eine separate gulp Aufgabe für watch Funktionalität hinzufügen. Wenn dies ist Prüfung nicht funktioniert, wenn die

${pkg.config.scss} 

korrekt den Pfad Präfix gesetzt.

+0

Das hat super funktioniert! Vielen Dank. –

+0

@BryanWhite Großartig. Froh dir zu helfen. Sie können es abstimmen. – Thusitha

+0

Hmmm, warum funktioniert der ursprüngliche Code nicht? Ich sehe nichts falsch daran. – Mark

Verwandte Themen