2016-11-29 139 views
2

我目前只有gulp工作,但需要在任何更新完成之前對文件進行更改。有沒有辦法運行構建任務,然後觀察變化?如何在執行時運行gulp任務

這是我一飲而盡文件:

var gulp = require('gulp'); 
var sass = require('gulp-sass'); 
var browserify = require('browserify'); 
var babelify = require('babelify'); 
var source = require('vinyl-source-stream'); 
var buffer = require('vinyl-buffer'); 


gulp.task('styles', function() { 
    gulp.src('sass/**/*.scss') 
     .pipe(sass().on('error', sass.logError)) 
     .pipe(gulp.dest('css/')); 
}); 

gulp.task('scripts', function() { 
    browserify('js/main.js') 
     .transform(babelify,{presets: ["es2015", "react"]}) 
     .bundle() 
     .pipe(source('bundle.js')) 
     .pipe(gulp.dest('.')) 
     .pipe(buffer()) 
}); 

gulp.task('default', function() { 
    gulp.watch('sass/**/*.scss',['styles']); 
    gulp.watch('js/*.js',['scripts']); 
}); 

回答

1

加入他們,是你的task之前運行的相關任務。

gulp.task('default', ['styles', 'scripts'], function() { 
    gulp.watch('sass/**/*.scss',['styles']); 
    gulp.watch('js/*.js',['scripts']); 
}); 

任務'styles'然後'scripts'將運行,然後'default'回調函數將被解僱調用兩個gulp.watch()聲明。

+0

謝謝!完美工作。想知道你是否知道如何處理javascript緩存?每當我對js文件進行更改時,所有內容都完美無缺,但在看到任何更改之前,我必須刷新幾次(或清除緩存)。 – Dileet