运行 gulp 根据条件执行

Running gulp exec based on condition

我正在研究与 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

我已经为 运行ning exec command 设置了条件,但 IOS_BUILD_COMMAND 仍然是运行宁。无法理解为什么会这样...

或者,您可以调用带参数或不带参数的 gulp 任务,并根据参数条件在内部调用 运行 任务。

我使用 yargs 让我的生活更轻松。

var args = require('yargs').argv;

gulp.task('some_task', function(){
   if(args.condition){
     // run your task
   }
})

像这样调用gulp:gulp some_task --condition=truegulp some_task --condition=false

这允许您在 gulp

之外保持条件