gulp插件gulp-uglify

Posted 我将枕中记忆抹去任岁月浮光掠影

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gulp插件gulp-uglify相关的知识,希望对你有一定的参考价值。

npm install gulp-uglify --save-dev

//基本使用
var gulp = require(‘gulp‘),
    uglify = require(‘gulp-uglify‘);
 
gulp.task(‘jsmin‘, function () {
    gulp.src(‘src/js/index.js‘)
        .pipe(uglify())
        .pipe(gulp.dest(‘dist/js‘));
});
//压缩多个js文件
var gulp = require(‘gulp‘),
    uglify = require(‘gulp-uglify‘);
 
gulp.task(‘jsmin‘, function () {
    gulp.src([‘src/js/index.js‘,‘src/js/detail.js‘]) //多个文件以数组形式传入
        .pipe(uglify())
        .pipe(gulp.dest(‘dist/js‘));
});
//匹配符“!”,“*”,“**”,“{}”
var gulp = require(‘gulp‘),
    uglify= require(‘gulp-uglify‘);
 
gulp.task(‘jsmin‘, function () {
    //压缩src/js目录下的所有js文件
    //除了test1.js和test2.js(**匹配src/js的0个或多个子文件夹)
    gulp.src([‘src/js/*.js‘, ‘!src/js/**/{test1,test2}.js‘]) 
        .pipe(uglify())
        .pipe(gulp.dest(‘dist/js‘));
});
//指定变量名不混淆改变
var gulp = require(‘gulp‘),
    uglify= require(‘gulp-uglify‘);
 
gulp.task(‘jsmin‘, function () {
    gulp.src([‘src/js/*.js‘, ‘!src/js/**/{test1,test2}.js‘])
        .pipe(uglify({
            //mangle: true,//类型:Boolean 默认:true 是否修改变量名
            mangle: {except: [‘require‘ ,‘exports‘ ,‘module‘ ,‘$‘]}//排除混淆关键字
        }))
        .pipe(gulp.dest(‘dist/js‘));
});
//gulp-uglify其他参数
var gulp = require(‘gulp‘),
    uglify= require(‘gulp-uglify‘);
 
gulp.task(‘jsmin‘, function () {
    gulp.src([‘src/js/*.js‘, ‘!src/js/**/{test1,test2}.js‘])
        .pipe(uglify({
            mangle: true,//类型:Boolean 默认:true 是否修改变量名
            compress: true,//类型:Boolean 默认:true 是否完全压缩
            preserveComments: ‘all‘ //保留所有注释
        }))
        .pipe(gulp.dest(‘dist/js‘));
});

参考:

http://www.ydcss.com/archives/54

https://github.com/terinjokes/gulp-uglify#user-content-options

 

以上是关于gulp插件gulp-uglify的主要内容,如果未能解决你的问题,请参考以下文章

gulp插件gulp-uglify

gulp 项目构建 代码压缩与混淆

gulp-uglify 压缩javascript文件

如何编写一个gulp插件

191.gulp处理JavaScript文件的任务

gulp 插件