Server 我的吞咽任务总是给我相同的选择

Server 我的吞咽任务总是给我相同的选择,server,gulp,task,Server,Gulp,Task,我们需要通过提示选择用户选择的环境。 我有以下代码: var gulp = require('gulp'); var clean = require('gulp-clean'); var uglify = require('gulp-uglify'); var rename = require('gulp-rename'); var gutil = require('gulp-util'); var order = require("gulp-order"); var conca

我们需要通过提示选择用户选择的环境。 我有以下代码:

    var gulp = require('gulp');
var clean = require('gulp-clean'); 
var uglify = require('gulp-uglify'); 
var rename = require('gulp-rename'); 
var gutil = require('gulp-util'); 
var order = require("gulp-order");
var concat = require("gulp-concat");
var ftp = require('gulp-ftp');
var prompt = require('gulp-prompt');



gulp.task('deploy', function() {
  gulp.src('app/dist/custom.js')
    .pipe(prompt.prompt({
        type:'text',
        name: 'env',
        message: 'Where dou you want toy deploy? ( stage / live / test )',
        validate: function(env){

            if(env === 'STAGE' || 'stage'){
                 gutil.log('STAGE deployment');
                 return true;
            }
            if(env === 'LIVE' || 'live'){
               gutil.log('LIVE deployment');
               return true;
            }
            if(env == 'TEST' || 'test'){
              gutil.log('TEST deployment');
              return true;
            }

        }
    }));
});

gulp.task('default', ['deploy']); 
但是如果有人想选择任何环境。。。电话总是说。。。 “阶段部署”

但如果我更改代码,它会起作用:

var gulp = require('gulp');
var clean = require('gulp-clean'); 
var uglify = require('gulp-uglify'); 
var rename = require('gulp-rename'); 
var gutil = require('gulp-util'); 
var order = require("gulp-order");
var concat = require("gulp-concat");
var ftp = require('gulp-ftp');
var prompt = require('gulp-prompt');



gulp.task('deploy', function() {
  gulp.src('app/dist/custom.js')
    .pipe(prompt.prompt({
        type:'text',
        name: 'env',
        message: 'Where dou you want toy deploy? ( stage / live / test )',
        validate: function(env){

            if(env === 'STAGE'){
                 gutil.log('STAGE deployment');
                 return true;
            }
            if(env === 'LIVE'){
               gutil.log('LIVE deployment');
               return true;
            }
            if(env == 'TEST'){
              gutil.log('TEST deployment');
              return true;
            }

        }
    }));
});

gulp.task('default', ['deploy']); 
但是我想要大写和小写的选项。。。有人关注这个问题吗

比尔,
Christian

你需要测试
|
两边的平等性:

if(env === 'STAGE' || env === 'stage'){
   gutil.log('STAGE deployment');
   return true;
}
if(env === 'LIVE' || env === 'live'){
  gutil.log('LIVE deployment');
  return true;
}
if(env == 'TEST' || env === 'test'){
  gutil.log('TEST deployment');
  return true;
}

在布尔上下文中计算非空字符串(如
'stage'
)的值为,这使整个OR表达式
env==='stage'| |'stage'
计算为
true
,而不管
env
有什么值。

对不起,基本js,昨天太累了,Jajaj谢谢Sven