gulp教程之gulp-uglify(压缩文件)

为了尊重作者原创写作,和感谢作者的分享,特标注本文转自:http://www.ydcss.com/archives/54

简介:

使用gulp-uglify压缩javascript文件,减小文件大小。

1、安装nodejs/全局安装gulp/项目安装gulp/创建package.json和gulpfile.js文件

1.1、gulp基本使用还未掌握?请参看: gulp详细入门教程

1.2、本示例目录结构如下:

2、本地安装gulp-uglify

2.1、github:https://github.com/terinjokes/gulp-uglify

2.2、安装:命令提示符执行 cnpm install gulp-uglify --save-dev

2.3、注意:没有安装cnpm请使用 npm install gulp-uglify --save-dev。 什么是cnpm,如何安装?

2.4、说明:--save-dev 保存配置信息至 package.json 的 devDependencies 节点。为什么要保存至package.json?

3、配置gulpfile.js

3.1、基本使用

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'));
});

3.2、压缩多个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'));
});

3.3、匹配符 “!”,“*”,“**”,“{}”

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'));
});

3.4、指定变量名不混淆改变

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'));
});

3.5、gulp-uglify其他参数  具体参看

vargulp=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'));
});

4、执行任务

4.1、命令提示符执行:gulp jsmin

5、结束语

5.1、本文有任何错误,或有任何疑问,欢迎留言说明。


  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值