Gulp-nodemon 和 watch 任务
Gulp-nodemon and watch task
我正在尝试使用 gulp 和 nodemon 创建我的构建流程。 objective是监视sass个文件并编译成css,服务器文件变化时也会重启节点应用
我的gulpfile.js:
gulp.task('sass', function(){
return gulp.src(sassFilesTobeProcessed).
pipe(sass()).
pipe(concat('ready_stylesheet.css')).
pipe(gulp.dest('express/public/stylesheets'))
})
gulp.task('watch', function(){
return gulp.watch(allSassFiles, ['sass']);
})
gulp.task('serve', function(){
return nodemon({
script: 'express/app.js',
}).on('start', ['watch'])
.on('change', ['watch'])
.on('restart', function(){
console.log('restarted');
})
})
监视任务运行良好,文件在更改后编译。但是我的 app.js 服务器文件中的更改不会触发服务器重启。当我评论 .on
语句时,它开始正常工作(服务器重新加载),但当然 sass 文件不再被观察到。因此,我认为这两者之间存在一些我无法发现的冲突。感谢任何帮助!我的 OS - Windows 7, node 4.2.6, nodemon 1.9.1
使用任务依赖项而不是 .on(event)
来启动您的 watch
任务:
gulp.task('serve', ['watch'], function(){
return nodemon({
script: 'express/app.js',
})
.on('restart', function(){
console.log('restarted');
})
})
使用 nodemon 发出重启事件
const cfg = require('../config')
const gulp = require('gulp')
const nodemon = require('nodemon')
const gnodemon = require('gulp-nodemon')
gulp.task('nodemon', ['ts', 'json'], () => {
gnodemon({
script: cfg.paths.main,
tasks: ['ts', 'json'],
ext: 'js',
watch: [cfg.paths.src],
// para no alterar el entorno de prodicion con test
env: {'NODE_ENV': process.env.NODE_ENV !== 'production'
? process.env.NODE_ENV || 'development' : 'development'}
})
.on('start', ['mocha'])
})
gulp.task('default', ['nodemon'], () => {
gulp.watch(cfg.paths.src, (event) => nodemon.emit('restart'))
})
我正在尝试使用 gulp 和 nodemon 创建我的构建流程。 objective是监视sass个文件并编译成css,服务器文件变化时也会重启节点应用
我的gulpfile.js:
gulp.task('sass', function(){
return gulp.src(sassFilesTobeProcessed).
pipe(sass()).
pipe(concat('ready_stylesheet.css')).
pipe(gulp.dest('express/public/stylesheets'))
})
gulp.task('watch', function(){
return gulp.watch(allSassFiles, ['sass']);
})
gulp.task('serve', function(){
return nodemon({
script: 'express/app.js',
}).on('start', ['watch'])
.on('change', ['watch'])
.on('restart', function(){
console.log('restarted');
})
})
监视任务运行良好,文件在更改后编译。但是我的 app.js 服务器文件中的更改不会触发服务器重启。当我评论 .on
语句时,它开始正常工作(服务器重新加载),但当然 sass 文件不再被观察到。因此,我认为这两者之间存在一些我无法发现的冲突。感谢任何帮助!我的 OS - Windows 7, node 4.2.6, nodemon 1.9.1
使用任务依赖项而不是 .on(event)
来启动您的 watch
任务:
gulp.task('serve', ['watch'], function(){
return nodemon({
script: 'express/app.js',
})
.on('restart', function(){
console.log('restarted');
})
})
使用 nodemon 发出重启事件
const cfg = require('../config')
const gulp = require('gulp')
const nodemon = require('nodemon')
const gnodemon = require('gulp-nodemon')
gulp.task('nodemon', ['ts', 'json'], () => {
gnodemon({
script: cfg.paths.main,
tasks: ['ts', 'json'],
ext: 'js',
watch: [cfg.paths.src],
// para no alterar el entorno de prodicion con test
env: {'NODE_ENV': process.env.NODE_ENV !== 'production'
? process.env.NODE_ENV || 'development' : 'development'}
})
.on('start', ['mocha'])
})
gulp.task('default', ['nodemon'], () => {
gulp.watch(cfg.paths.src, (event) => nodemon.emit('restart'))
})