我的 gulpfile 中有以下代码
gulp.task('scripts', function () {
gulp.src(paths.browserify)
.pipe(browserify())
.pipe(gulp.dest('./build/js'))
.pipe(refresh(server));
});
gulp.task('lint', function () {
gulp.src(paths.js)
.pipe(jshint())
.pipe(jshint.reporter(stylish));
});
gulp.task('nodemon', function () {
nodemon({
script: 'app.js'
});
});
我需要在 Nodemon 重新启动时运行脚本和 lint 任务。我有以下内容
gulp.task('nodemon', function () {
nodemon({
script: 'app.js'
}).on('restart', function () {
gulp.run(['scripts', 'lint']);
});
});
Gulp.run() 现已弃用,那么我如何使用 gulp 和最佳实践实现上述目标?
最佳答案
gulp-nodemon 文档指出您可以直接执行此操作,传递一组要执行的任务:
nodemon({script: 'app.js'}).on('restart', ['scripts', 'lint']);
参见 doc here
更新,因为 gulp-nodemon 的作者也使用 run:
想法 #1,使用函数:
var browserifier = function () {
gulp.src(paths.browserify)
.pipe(browserify())
.pipe(gulp.dest('./build/js'))
.pipe(refresh(server));
});
gulp.task('scripts', browserifier);
var linter = function () {
gulp.src(paths.js)
.pipe(jshint())
.pipe(jshint.reporter(stylish));
});
gulp.task('lint', linter);
nodemon({script: 'app.js'}).on('restart', function(){
linter();
browserifier();
});
关于javascript - Nodemon 重启运行 gulp 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21598340/