59 votes

GulpUglifyError: impossible de réduire JavaScript

J'essaie de réduire au minimum mes fichiers de script pour lesquels j'utilise gulp task runner Et j'essaye le gulp-uglify plugin

Code:

  gulp.task('concat', function() {
    return gulp.src('app/**/*.js')
        // .pipe(concat('script.js'))
        .pipe(uglify())
        .pipe(gulp.dest('./dist/'))
});
 

mais je reçois une erreur comme

entrez la description de l'image ici

quand j'essaie de lancer une tâche en tant que gulp concat Toute aide serait appréciée

96voto

haouarin Points 469

L'erreur principale est générée lorsque vous utilisez le format ES6. Utilisez le module gulp-uglify-es au lieu de «gulp-uglify» pour remédier à cette erreur.

 var uglify = require('gulp-uglify-es').default;
 

62voto

Mahbubur Rahman Points 118

Pour voir l'erreur dans la console:

 var gutil = require('gulp-util');

gulp.task('concat', function() {
return gulp.src('app/**/*.js')
    // .pipe(concat('script.js'))
    .pipe(uglify())
    .on('error', function (err) { gutil.log(gutil.colors.red('[Error]'), err.toString()); })
    .pipe(gulp.dest('./dist/'))
});
 

Pour trouver le fichier exact, avec le numéro de ligne du registre d’erreur et exécuter cette tâche:

 var pump = require('pump');

gulp.task('uglify-error-debugging', function (cb) {
  pump([
    gulp.src('app/**/*.js'),
    uglify(),
    gulp.dest('./dist/')
  ], cb);
});
 

15voto

Shikha thakur Points 746

Avez-vous utilisé le format ES6 dans votre fichier de script? Si c'est le cas, essayez ES5 maintenant car lorsque vous faites gulp-uglify, il ne comprend pas le format ES6 dès maintenant et après cela, essayez votre code.

  gulp.task('concat', function() {
    return gulp.src('app/**/*.js')
        .pipe(concat('script.js'))
        .pipe(uglify())
        .pipe(gulp.dest('./dist/'))
});
 

et exécutez la tâche gulp concat cela fonctionnera

4voto

Fred Points 462

Pour moi, c'était une option obsolète "preserveComments" qui a généré l'erreur (et qui a complètement écrasé le script).

Trouvé le problème en utilisant:

 gulp.task('concat', function() {
return gulp.src('app/**/*.js')
    .pipe(uglify())
    .on('error', function (err) { console.log( err ) })
    .pipe(gulp.dest('./dist/'))
});
 

3voto

Sujithrao Points 555

Essayez d'utiliser ceci

 var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var minifyJS = require('gulp-minify');

gulp.task('concat', function() {
    return gulp.src('app/**/*.js')
        .pipe(minifyJS())
        .pipe(concat('bundle.min.js'))
        .pipe(uglify({ mangle: false }))
        .pipe(gulp.dest('./dist/'));
});
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X