gulp多次执行任务
我在我的gulpfile中有以下代码片段。gulp多次执行任务
gulp.task('static', function() {
return gulp.src(['./src/**', '!./src/js/**', '!./src/js/', '!./src/scss/', '!./src/scss/**'])
.pipe(gulp.dest(outputDir + '/'))
});
gulp.task('watch', function() {
gulp.watch(['./src/**', '!./src/js/**', '!./src/js/', '!./src/scss/', '!./src/scss/**'], ['static']);
});
gulp.task('dev', ['static']);
gulp.task('default', ['watch', 'dev']);
如果我运行gulp dev
,gulp watch
或gulp static
,一切工作正常。但是,如果我只运行gulp
(默认值),它会执行static
任务次。任何人都可以帮我解释为什么会发生这种情况?
P.S.传递给监视的路径是这样的,因为如果我不排斥作为单独路径的目录,它似乎由于某种原因复制了空目录js
和scss
。
可能因为你没有返回任务,而你需要它们asyc。
看到这个:Gulp.js task, return on src?
和文档(也挂在上方,张贴)https://github.com/gulpjs/gulp/blob/master/docs/API.md#async-task-support
此外,dev
任务看起来是多余目前的形式 - 你不妨直接使用任务static
,除非你打算捆绑更多的任务dev
我在上面的例子中删除了很大一部分代码。 'dev'有几个依赖关系。还有一个错字,“静态”任务确实有回报。 – 2014-09-24 17:36:39
'watch'是否也需要返回? – 2014-09-24 17:37:53
'outputDir'的值是什么? – 2014-09-24 11:41:44
根据所调用的任务是开发还是生产,它被设置为“build /”或“deploy /”。 – 2014-09-24 14:47:35