2016-04-07 34 views
2

我使用classes syntax書寫基本的JavaScript,並試圖uglify it with gulp,但得到這個錯誤:如何uglify JavaScript類?

events.js:72
throw er; // Unhandled 'error' event

我只是用示例代碼從Mozilla的網站:

class Polygon { 
    constructor(height, width) { 
    this.height = height; 
    this.width = width; 
    } 
} 

並沒有什麼特別的我gulp文件 - 完美適用於任何非class js:

// Include gulp 
var gulp = require('gulp'); 

// Include Our Plugins 
var jshint = require('gulp-jshint'); 
var concat = require('gulp-concat'); 
var uglify = require('gulp-uglify'); 
var rename = require('gulp-rename'); 

// Lint Task 
gulp.task('lint', function() { 
    return gulp.src('js/*.js') 
     .pipe(jshint()) 
     .pipe(jshint.reporter('default')); 
}); 

// Concatenate & Minify JS 
gulp.task('scripts', function() { 
    return gulp.src('js/*.js') 
     .pipe(concat('all.js')) 
     .pipe(gulp.dest('dist/js')) 
     .pipe(rename('all.min.js')) 
     .pipe(uglify()) 
     .pipe(gulp.dest('dist/js')); 
}); 

// Watch Files For Changes 
gulp.task('watch', function() { 
    gulp.watch('js/*.js', ['lint', 'scripts']); 
    gulp.watch('scss/*.scss', ['sass']); 
}); 

// Default Task 
gulp.task('default', ['lint', 'scripts', 'watch']); 
+6

類只在ECMAScript6中可用;你確定你的環境支持ES6嗎? –

+0

你指的是哪個環境?代碼在我的瀏覽器中按預期工作,並通過lint。 –

+0

env你正在運行吞噬 –

回答