2015-06-19 71 views
0

目前代碼:只有通過標誌時才執行吞嚥任務?

var open = require('open'); 
var gulp = require("gulp"); 
var pkg = require("../../package.json"); 

//opens the launchpage with default browser 
gulp.task("open", function() { 
    open('http://localhost:' + pkg.webServerPort + '/commonclient/launchpage.html'); 
}); 

眼下,運行gulp命令啓動服務器,並做了一堆其他的編譯工作。只有在命令行輸入gulp -o或類似內容時,如何修改這個才能運行「打開」任務?

+1

的[可能重複是否有可能通過一個標誌讓Gulp讓它以不同的方式運行任務?](http://stackoverflow.com/questions/23023650/is-it-possible-to-pass-a-flag-to-gulp-to-have-it-run不同的方式) –

+0

有時候我認爲這些日子中有90%的評論在StackOverflow上s是「可能重複」的迴應。我開始認爲這是一個機器人。懷念人們實際回答問題以幫助開發人員的日子。 – antonpug

+1

有時候刪除重複對於其他開發者來說實際上是一種幫助。這個問題(雖然不是這種確切的形式)已經得到了很好的回答,比我在建議的副本中回答得更好。 –

回答

0

您可以通過檢查process.argv,或者乾脆找一個ENV旗process.env

gulp.task("open", function() { 
    if (process.argv.indexOf('-o') > -1) { 
    open('http://localhost:' + pkg.webServerPort + '/commonclient/launchpage.html'); 
    } 
}); 

或與環境變量做到這一點

gulp.task("open", function() { 
    if (processs.env.USE_OPEN) { 
    open('http://localhost:' + pkg.webServerPort + '/commonclient/launchpage.html'); 
    } 
});