gulp.series() 没有 运行 任务
gulp.series() doesn't run tasks
我不明白为什么 gulp.series()
没有在我的回调函数中触发。
我正在尝试使用 gulp-prompt
从用户输入中获取字符串并使用 gulp.series()
调用构建和部署函数。我在 gulp.series()
中的任务根本没有触发。
gulp.task('test', function(){
const prompt = require('gulp-prompt');
return gulp.src('test.js')
.pipe(prompt.prompt({
type: 'checkbox',
name: 'env',
message: 'which environment do you want to deploy to?',
choices: ['qa','prod']
},function(res){
//console.dir(res.env);
var env = res.env;
console.log(env);
console.log('hi');
gulp.series('clean', 'patternlab:build', 'tag-version', deployWeb.bind(this, env), function(done){
done();
});
}));
});
调用 gulp.series('task1', 'task2')
而不是 运行 task1
和 task2
。它所做的只是 return 一个新功能。只有调用 that 函数后,任务才会真正执行。
这意味着您需要执行以下操作:
var runTasks = gulp.series('clean', 'patternlab:build',
'tag-version', deployWeb.bind(this, env));
runTasks();
您代码中的整个 function(done){ done(); }
部分没有多大意义,gulp.series()
不需要。
Sven Schoenung回答正确
如果您不想添加新变量,只需将其设为 self-calling JS 函数即可,
gulp.series('clean', 'patternlab:build', 'tag-version', deployWeb.bind(this, env))();
我不明白为什么 gulp.series()
没有在我的回调函数中触发。
我正在尝试使用 gulp-prompt
从用户输入中获取字符串并使用 gulp.series()
调用构建和部署函数。我在 gulp.series()
中的任务根本没有触发。
gulp.task('test', function(){
const prompt = require('gulp-prompt');
return gulp.src('test.js')
.pipe(prompt.prompt({
type: 'checkbox',
name: 'env',
message: 'which environment do you want to deploy to?',
choices: ['qa','prod']
},function(res){
//console.dir(res.env);
var env = res.env;
console.log(env);
console.log('hi');
gulp.series('clean', 'patternlab:build', 'tag-version', deployWeb.bind(this, env), function(done){
done();
});
}));
});
调用 gulp.series('task1', 'task2')
而不是 运行 task1
和 task2
。它所做的只是 return 一个新功能。只有调用 that 函数后,任务才会真正执行。
这意味着您需要执行以下操作:
var runTasks = gulp.series('clean', 'patternlab:build',
'tag-version', deployWeb.bind(this, env));
runTasks();
您代码中的整个 function(done){ done(); }
部分没有多大意义,gulp.series()
不需要。
Sven Schoenung回答正确
如果您不想添加新变量,只需将其设为 self-calling JS 函数即可,
gulp.series('clean', 'patternlab:build', 'tag-version', deployWeb.bind(this, env))();