Gulp uglify打破角度应用

时间:2014-06-26 19:44:20

标签: javascript angularjs gulp uglifyjs

尝试在我的角度应用程序中使用gulp-ugily时,即使我通过gulp-ngmin运行它,它也会崩溃。

这是gulp文件:

var gulp = require('gulp'),
    concat = require('gulp-concat'),
    ngmin = require('gulp-ngmin'),
    uglify = require('gulp-uglify');

gulp.task('compress', function() {
    gulp.src('client/js/source/*.js')
        .pipe(concat('app.js'))
        .pipe(ngmin())
        .pipe(uglify())
        .pipe(gulp.dest('client/js'));
});

2 个答案:

答案 0 :(得分:40)

它有助于在uglify中禁用mangle选项,因为它会弄乱所有注入和命名。

.pipe(uglify({ mangle: false }))

答案 1 :(得分:29)

也许为未来的用户回答这个问题,因为这篇帖子看起来很旧。

使用ng-annotate在uglifying时修复AngularJS问题。将其安装为任何其他库:

npm install gulp-ng-annotate --save-dev

然后在你的gulpfile.js中使用它:

var gulp = require('gulp')
var concat = require('gulp-concat')
var uglify = require('gulp-uglify')
var ngAnnotate = require('gulp-ng-annotate')

gulp.task('js', function () {
  gulp.src(['src/**/module.js', 'src/**/*.js'])
    .pipe(concat('app.js'))
    .pipe(ngAnnotate())
    .pipe(uglify())
    .pipe(gulp.dest('.'))
})

希望这有帮助!

来源:https://medium.com/@dickeyxxx/best-practices-for-building-angular-js-apps-266c1a4a6917