我正在尝试使用gulp uglify我的javascript代码。我正在Visual Studio 2015中开发一个Web应用程序,我们在gulpfile.js中有一堆任务脚本。这是一个脚本片段,它将我们所有的javascript打包到一个名为app.js的文件中,以及我是如何尝试将其搞砸的:
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的工作不一样?
答案 0 :(得分:0)
它不起作用,因为你需要在concatinating过程后保存文件,然后再次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));
});