使用Gulp压缩混淆JS的相关配置

1、把npm 更新到最新版本

npm install -g npm

2、把npm源切换到taobao源
  全局安装nrm:npm install -g nrm 
  查看正在使用的源:nrm ls
  添加源,例如:nrm add taobao https://registry.npm.taobao.org
  删除源,例如:nrm del taobao
  使用源:例如:nrm use taobao
  测试源的速度:nrm test
3、全局安装gulp

npm install --global gulp

3、在文件根目录初始化npm,出现package.json

npm init -y

4、安装依赖

npm install gulp --save-dev

5、在根目录下面新建gulpfile.js文件,并配置

var gulp = require('gulp');
gulp.task('default', function() {
// 将你的默认的任务代码放在这
});

6、安装关于gulp的依赖

npm install gulp-uglify gulp-rename gulp-concat gulp-clean gulp-notify --save-dev

7、编辑gulpfile.js,如下:

var gulp=require('gulp'), //gulp基础库
minifycss=require('gulp-minify-css'), //css压缩
concat=require('gulp-concat'), //合并文件
uglify=require('gulp-uglify'), //js压缩
rename=require('gulp-rename'), //文件重命名
notify=require('gulp-notify'); //提示

gulp.task("minjs", function () { //minjs为任务名
return gulp.src("./dest/*.js")    //需要压缩的文件目录
.pipe(uglify())    //压缩混淆,此依赖需要引入
.pipe(gulp.dest("./out"))    //输出压缩混淆后的目录
});

8、全局安装babel-cli

npm install --global babel-cli

9、安装babel依赖插件

npm install babel-preset-es2015 --save-dev

10、在根目录新建.babelrc文件,并编辑

{
"presets" : ["es2015"]
}

11、修改命令

"build":"babel j -d dest", //ES6 转 ES5 并输出到文件夹 dest
"minjs":"gulp minjs" //压缩混淆命令

12、运行命令(顺序不要变,先把ES6转化问ES5,然后开始压缩混淆,uglify不支持ES6压缩混淆,会报错)

npm run build
npm run minjs

13、为了方便执行,可以把命令编写成shell命令来使用git bash执行
在项目根目录新建文件tools.sh
编辑tools.sh

echo "准备,开始执行了"
npm run build && npm run minjs

保存
使用git bash把当前目录切到项目根目录,执行 ./tools.sh 就可以了

原文地址:https://www.cnblogs.com/Hanson823/p/13183365.html