我正在开发一个Gulpfile。是否可以在更改后立即重启?我正在使用CoffeeScript开发它。保存更改后可以Gulp观看Gulpfile.coffee以便重新启动吗?
Gulpfile
Gulp
Gulpfile.coffee
您可以创建一个task这种意愿gulp.watch的gulpfile.js,只是spawn另一个一饮而尽child_process。
task
gulp.watch
gulpfile.js
spawn
var gulp = require('gulp'), argv = require('yargs').argv, // for args parsing spawn = require('child_process').spawn; gulp.task('log', function() { console.log('CSSs has been changed'); }); gulp.task('watching-task', function() { gulp.watch('*.css', ['log']); }); gulp.task('auto-reload', function() { var p; gulp.watch('gulpfile.js', spawnChildren); spawnChildren(); function spawnChildren(e) { // kill previous spawned process if(p) { p.kill(); } // `spawn` a child `gulp` process linked to the parent `stdio` p = spawn('gulp', [argv.task], {stdio: 'inherit'}); } });
我曾经yargs为了接受“主任务”而在需要重新启动时运行。因此,为了运行此程序,您可以调用:
yargs
gulp auto-reload --task watching-task
要进行测试,请致电touch gulpfile.js或touch a.css查看日志。
touch gulpfile.js
touch a.css