为什么Gulp的uglify不起作用?

问题描述:

我想用gulp丑化我的javascript代码。我正在Visual Studio 2015中开发一个Web应用程序,并且在gulpfile.js中有一堆任务脚本。下面是我试图丑化它是我们的打包所有的JavaScript到一个名为app.js文件中的脚本,以及如何的一个片段:为什么Gulp的uglify不起作用?

gulp.task('dev:js', ['lint'], function() { 
    return gulp.src(paths.appjs) 
     .pipe(plugins.order([ 
      'Shared/PartialViews/_mainLayout.js', 
      'Shared/shared.js', 
      '*' 
     ])) 
     .pipe(plugins.concat('app.js')) 
     .pipe(plugins.uglify())  // <-- Uglification 
     .pipe(gulp.dest(paths.distJs)); 
}); 

但它不工作。当我运行该应用程序时,打开Chrome控制台,我仍然可以看到app.js的完美清晰的形式。

同样的方法适用于其他文件,例如我们的vandor.js文件:

gulp.task('vendor:js', ['install'], function() { 
    return gulp.src(plugins.mainBowerFiles()) 
     .pipe(plugins.filter('*.js')) 
     .pipe(plugins.order([ 
      'jquery.js', 
      'bootstrap.js', 
      'jquery.dataTables.js', 
      'dataTables.bootstrap.js', 
      'dataTables.responsive.js', 
      'responsive.bootstrap.js', 
      'dataTables.select.js', 
      'pnotify.js', 
      '*' 
     ])) 
     .pipe(plugins.debug({ title: 'vendor-files:' })) 
     .pipe(plugins.concat('vendor.js')) 
     .pipe(plugins.uglify())  // <-- Uglification 
     .pipe(gulp.dest(paths.distJs)); 
}); 

为什么不为app.js同样的工作?

它不起作用,因为您需要在协商过程后保存文件,然后再次uglify并保存。像这样:

gulp.task('vendor:js', ['install'], function() { 
    return gulp.src(plugins.mainBowerFiles()) 
     .pipe(plugins.filter('*.js')) 
     .pipe(plugins.order([ 
      'jquery.js', 
      'bootstrap.js', 
      'jquery.dataTables.js', 
      'dataTables.bootstrap.js', 
      'dataTables.responsive.js', 
      'responsive.bootstrap.js', 
      'dataTables.select.js', 
      'pnotify.js', 
      '*' 
     ])) 
     .pipe(plugins.debug({ title: 'vendor-files:' })) 
     .pipe(plugins.concat('vendor.js')) 
     .pipe(gulp.dest(paths.distJs)) 
     .pipe(plugins.uglify())  // <-- Uglification 
     .pipe(gulp.dest(paths.distJs)); 
}); 
+0

嗯......这是一个工作。如果我将一行额外的行保存到paths.distJs中,但不能正常工作,脚本就会崩溃。如果我将它添加到能工作的那个,也是一样。 – gib65

+0

对不起,我似乎以某种方式误解了代码。无论如何,我有类似的构建之前,并保存文件之前uglifying他们解决了我的问题,很抱歉听到它不能帮助你。 –