根据条件运行gulp exec

时间:2016-03-23 11:36:23

标签: ionic-framework gulp exec

我正在研究与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 。无法理解为什么会这样......

1 个答案:

答案 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=truegulp some_task --condition=false

这允许你保持gulp之外的条件