gulp教程之gulp-uglify
阿新 • • 發佈:2018-12-31
簡介:
使用gulp-uglify壓縮javascript檔案,減小檔案大小。
1、安裝nodejs/全域性安裝gulp/專案安裝gulp/建立package.json和gulpfile.js檔案
1.1、gulp基本使用還未掌握?請參看: gulp詳細入門教程
1.2、本示例目錄結構如下:
2、本地安裝gulp-uglify
2.2、安裝:命令提示符執行 cnpm install gulp-uglify --save-dev
2.3、注意:沒有安裝cnpm請使用 npm install gulp-uglify --save-dev
。 什麼是cnpm,如何安裝?
2.4、說明:--save-dev
3、配置gulpfile.js
3.1、基本使用
JavaScript1 2 3 4 5 6 7 8 |
var gulp = require('gulp'),
uglify = require('gulp-uglify');
gulp.task('jsmin', function () {
gulp.src('src/js/index.js')
.pipe(uglify()) |
3.2、壓縮多個js檔案
JavaScript1 2 3 4 5 6 7 8 |
var gulp = require('gulp'),
uglify = require('gulp-uglify');
gulp.task('jsmin', function () {
gulp.src(['src/js/index.js','src/js/detail.js']) //多個檔案以陣列形式傳入 |
3.3、匹配符“!”,“*”,“**”,“{}”
JavaScript1 2 3 4 5 6 7 8 9 10 | 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、指定變數名不混淆改變
JavaScript1 2 3 4 5 6 7 8 9 10 11 | 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其他引數 具體參看
JavaScript1 2 3 4 5 6 7 8 9 10 11 12 | 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')); }); |
4、執行任務
4.1、命令提示符執行:gulp jsmin
5、結束語
來源:http://www.ydcss.com/archives/54