2017-09-20 7 views
1

私のgulpファイルを設定する際に問題があります。既定のタスクを実行すると、それは想定されているすべてのジョブが実行されますが、ファイルを追加したり、SCSSファイルを変更したりすると、嫌な仕事は実行されません(私はまた、 ja-watchを実行してください)。以下はなぜ私のグルップタスクは変更を監視していませんか?

は私の一気ファイル

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']); 
}); 

であり、これは私が間違ってやって何ができるかpkg.config.scss

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

の定義ですか?

+0

これはscssファイルまたはすべてのファイルタイプにのみ適用されますか? – Thusitha

答えて

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']); 

watch機能のために別々のgulpタスクを追加してみてください。

${pkg.config.scss} 

が正しくパス接頭辞を設定している場合、これはチェックが機能していない場合。

+0

それはすごくうまくいった!ありがとう。 –

+0

@BryanWhite素晴らしい。あなたを助けてうれしい。あなたはそれを投票することができます。 – Thusitha

+0

ええと、元のコードはなぜ機能しなかったのですか?私はそれが間違っているとは思わない。 – Mark

関連する問題