Gulp-任务内的条件任务

Gulp-任务内的条件任务,gulp,gulp-watch,Gulp,Gulp Watch,如果环境设置为生产环境,我想将默认任务设置为与监视任务一起运行。如果条件在任务堆栈中起作用,我找不到解决方案。这是我的密码: gulp.task('default', ['styles', 'scripts', 'video' ], function() { gulpif(isProduction, gulp.task('watch')); }); 使用gulp.start('watch')而不是gulp.task('watch'),尽管您通常不想从另一个任务调用任务。更好的方法是创建

如果环境设置为生产环境,我想将默认任务设置为与监视任务一起运行。如果条件在任务堆栈中起作用,我找不到解决方案。这是我的密码:

gulp.task('default', ['styles', 'scripts', 'video' ], function() {
    gulpif(isProduction, gulp.task('watch'));
});
使用
gulp.start('watch')
而不是
gulp.task('watch')
,尽管您通常不想从另一个任务调用任务。更好的方法是创建一个函数并调用该函数

还要注意:
gulp.start()
方法将不再适用于gulp4


更新:

下面是如何在gulp中使用函数的示例:

 var someFile = require('./someFile.js'); 

 gulp.task('my-custom-task', function () {
   someFile.doSomething('foo', 'bar');
 });
如果您的函数以异步方式执行某些操作,那么它应该在最后调用回调,以便gulp能够知道何时完成:

 var someFile = require('./someFile.js'); 

 gulp.task('my-custom-task', function (callback) {
   someFile.doSomething('foo', 'bar', callback);
 });

谢谢那么我如何在gulp中调用特定的函数呢?如果你所说的函数是指gulp任务,那么上面的方法就是这样做的。否则,您可以创建一个常规js函数,并以通常调用函数的方式调用它。除此之外,要创建一个模拟吞咽任务的函数,您只需创建一个js函数,并在其中使用吞咽函数来维护功能。总的来说,这是“标准”,因此您可以轻松过渡到gulp 4,而且分离gulpfile.js更容易。一旦我上了电脑,我会更详细地更新我的答案