我正在研究与gulp集成的离子项目。如何根据条件运行exec
命令?
我试过以下
var isIOSBuild = false;
if(args.iosBuild){
isIOSBuild = true;
console.log("Creating IOS Build...");
}
// Build application
gulp.task('ios_build', function (cb) {
gulp.src('', {read: false})
.pipe(gulpif(false,
exec(IOS_BUILD_COMMAND,
{
cwd : './',
maxBuffer: 1024 * 1024
},
function (err, stdout, stderr) {
console.log(stdout);
console.log(stderr);
cb(err);
})
));
});
输入:gulp -r
我已经提出运行 exec command
的条件仍然正在运行 IOS_BUILD_COMMAND 。无法理解为什么会这样......
答案 0 :(得分:1)
或者,您可以使用或不使用参数调用gulp任务,并在参数条件内部运行任务。
我使用yargs让我的生活更轻松。
var args = require('yargs').argv;
gulp.task('some_task', function(){
if(args.condition){
// run your task
}
})
像这样调用gulp:gulp some_task --condition=true
或gulp some_task --condition=false
这允许你保持gulp之外的条件