2017-11-14 5 views
0

Ich versuche zu verwenden schluck-verunstalten alle JS-Dateien rekursiv in meinem Verzeichnis zu komprimieren und verunstalten:

var gulp = require('gulp'); 
var uglify = require('gulp-uglify'); 

gulp.task('compress', function() { 
    return gulp.src('js/**/*.js') 
     .pipe(uglify({ mangle: {reserved: '$super'}})) 
     .pipe(gulp.dest('js_dist')); 
}); 

gulp.task('default', ['compress']); 

Das funktioniert gut, aber ich merkte, Javascript-Fehler im ganzen meine Webseite. Dies liegt daran, in der Prototype file kann ich nur ein Vorkommen von $super in Anführungszeichen auf Zeile 138 bleibt noch, aber die anderen 12 Vorkommen davon wurden egglified. Ich dachte, dass der reserved Abschnitt dieses globale reservieren würde, aber es scheint nicht zu funktionieren. Irgendwelche Ideen?

Antwort

0

Weirdly genug, Formatierung der Code wie folgt mein Problem gelöst:

var gulp = require('gulp'); 
var uglify = require('gulp-uglify'); 

gulp.task('compress', function() { 
    return gulp.src('js/**/*.js') 
     .pipe(uglify({ 
      'mangle': { 
       reserved: ['$super'] 
      } 
     })) 
     .pipe(gulp.dest('js_dist')); 
}); 

gulp.task('default', ['compress']); 
+1

nicht seltsam, mangle.reserved ein Array von Werten nimmt https://github.com/mishoo/UglifyJS2#mangle-options sogar wenn es nur ein Wert ist. – Mark

+0

Das merkte ich bald darauf. Alles funktioniert jetzt perfekt! –