2015-11-04 7 views
5
Arbeits

Ich habe die folgende gulp Aufgabe in meinem gulpfile.js: vervollständigtNODE_ENV Einstellung über envify nicht

gulp.task('build-scripts', function() { 
    var b = browserify({ debug: false }); 
    b.transform(reactify); 
    b.transform(envify({ 
     _: 'purge', 
     NODE_ENV: 'production' 
    })); 

    b.add('./src/scripts/index.js'); 

    return b.bundle() 
    .pipe(source('./www/scripts/dist/bundle.js')) 
    .pipe(buffer()) 
    .pipe(uglify()) 
    .pipe(gulp.dest('.')) 

}); 

Die Aufgabe mit dem Status 0 und die React Transformation geschieht, aber ich sehe immer noch in bundle.js:

if (process.env.NODE_ENV !== 'production') { 

War das nicht mit der envify Umwandlung weggehen? Mache ich hier etwas falsch?

Ich habe etwas gegraben, aber alle Lösungen, die ich finden kann, sind os x/linux spezifisch (ich bin auf einer Windows-Maschine).

BEARBEITEN: Ich bin der Schluck Build innerhalb von Visual Studios Task Runner Explorer.

Antwort

3

Der Doc sagt:

standardmäßig Umgebungsvariablen, die nicht definiert sind, werden unberührt gelassen werden.

https://github.com/hughsk/envify#purging-processenv

Haben Sie versucht, es vor der Ausführung, dass die Definition? d.h.

process.env.NODE_ENV = 'production';