前提:已经安装有安装了node 和npm 环境

安装gulp

假设已经安装了node 和npm (淘宝的cnpm很适合国内使用)。

1、首页全局安装gulp。

1 npm install --global gulp 

2、其次局部安装gulp。(注:局部安装是安装到你项目的根目录,这是很多教程没有清晰表明)

npm install gulp --save-dev

3、在项目根目录下创建一个名为 gulpfile.js 的文件

// 引入 gulp及组件
var gulp = require('gulp');gulp.task('default',function(){gulp.start('minify');
});//JS处理
gulp.task("minify",function(){... ...})

View Code

4、运行gulp。(默认的名为 default 的任务(task)将会被运行,想要单独执行特定的任务(task),请输入 gulp <task> <othertask>)

gulp

5、安装压缩组件 gulp-uglify 

npm install  gulp-uglify --save-dev

在上述 gulpfile.js 的文件里,写入:

var gulp = require('gulp');
var uglify = require('gulp-uglify');gulp.task('default',function(){gulp.start('minify');
});//JS处理
gulp.task("minify",function(){gulp.src(['./static/before/*.js']).pipe(uglify()).pipe(gulp.dest('./dest/after'))
})

运行gulp:

gulp

压缩AngularJS代码的时候,需要添加 ng-annotate 插件:

var gulp = require('gulp');
var ngAnnotate = require('gulp-ng-annotate');
var uglify = require('gulp-uglify');
var ngmin = require('gulp-ngmin');gulp.task('default',function(){gulp.start('minify');
});//JS处理
gulp.task("minify",function(){gulp.src(['./static/before/*.js']).pipe(ngAnnotate()).pipe(ngmin({dynamic: false})).pipe(uglify()).pipe(gulp.dest('./dest/after'))
})

还有package.json中需要添加相应的:(即运行:npm install --save-dev gulp-ng-annotate 和 npm install --save-dev gulp-ngmin

{"name": "application-name","version": "0.0.1","devDependencies": {"babel-preset-env": "^1.6.1","gulp": "^3.9.1","gulp-babel": "^7.0.0","gulp-clean": "^0.4.0","gulp-concat": "^2.6.1","gulp-jshint": "^2.1.0","gulp-minify-css": "^1.2.4","gulp-ng-annotate": "^2.1.0","gulp-ngmin": "^0.3.0","gulp-notify": "^3.1.0","gulp-rename": "^1.2.2","gulp-uglify": "^3.0.0"}
}

合并和压缩JS、CSS文件

压缩JS,CSS文件需要引用如下组件:

gulp-minify-css: 压缩css
gulp-jshint: 检查js
gulp-uglify: 压缩js
gulp-concat: 合并文件
gulp-rename: 重命名文件
gulp-clean: 清空文件夹

gulp-notify:提示

【关于 gulp中报错 Task 'default' is not in your gulpfile 的解决方式】

在末尾加上一个default任务就可以解决,即在gulpfile,js中添加default方法:

gulp.task('default',function(){    gulp.start('minify');});

转载于:https://www.cnblogs.com/miny-simp/p/8269127.html

gulp-uglify 压缩js相关推荐

  1. webstorm 设置uglify 压缩js文件

    第一步:打开npm,全局安装 npm install uglify-js -g 第二步: 打开webstorm的file->settings ->External Tools,点击左上角的 ...

  2. ionic中使用Cordova Uglify 压缩js与css

    参照:https://www.npmjs.com/package/cordova-uglify 安装:npm install cordova-uglify 安装完成之后,打开: hooks/uglif ...

  3. gulp构建项目(七):gulp-uglify压缩js以及检查js语法错误

    需求分析:将js文件压缩成一行,减少js文件的大小.压缩过程中如果遇到js语法错误,将会报错并且压缩会被终止.所以我们需要: 在开发环境下,编写js代码时,要监听并检查js文件的语法,避免语法错误导致 ...

  4. gulp实现打包js/css/img/html文件,并对js/css/img文件加上版本号

    参考打包教程: http://www.cnblogs.com/tugenhua0707/p/4069769.html http://www.cnblogs.com/tugenhua0707/p/498 ...

  5. gulp 压缩html文件,gulp压缩js

    请务必理解如下章节后阅读此章节: 压缩 js 代码可降低 js 文件大小,提高页面打开速度.在不利用 gulp 时我们需要通过各种工具手动完成压缩工作. 所有的 gulp 代码编写都可以看做是将规律转 ...

  6. gulp 压缩html内的js,gulp实战技巧之gulp-uglify压缩js

    摘要: 前面讲了压缩css的几款插件,这篇就介绍下压缩js的一款插件--gulp-uglify.使用gulp-uglify可以压缩我们的js代码,也可以使用其提供的混淆功能对代码进行简单的混淆,注意是 ...

  7. gulp压缩js转义es6的常见错误及解决方案

    gulp压缩js转义es6的常见错误及解决方案 参考文章: (1)gulp压缩js转义es6的常见错误及解决方案 (2)https://www.cnblogs.com/uimeigui/p/11797 ...

  8. gulp代码压缩和制作雪碧图

    安装nodejs gulp是基于nodejs,需要安装nodejs 在 [ nodejs官网 ]下载并安装nodejs 查看nodejs版本 安装完nodejs后,在命令行中(window + r 输 ...

  9. uglifyjs压缩js文件

    UglifyJS 是一个服务端node.js的压缩程序,用来压缩js文件 (需要用到 node+npm node集成了npm) 下载安装uglify.js npm install uglify-js ...

最新文章

  1. 解决Hbuilder打包的APP微信支付时无法唤起支付,且提示{“code“:-100,“message“:“[payment微信:-1]General errors“}的问题
  2. 九、数据库群集部署、配置 (二)
  3. 六大环节,教你如何从 0 到 1 搭建一场 A/B 测试
  4. 各种没有由来的问题,干!
  5. [PAT乙级]1023 组个最小数
  6. 沈向洋谈文献阅读(转载)
  7. POST请求传入中文参数,接收端乱码
  8. sklearn.decomposition.FastICA实现FastICA算法
  9. 波卡跨链交易协议RAI Finance将接入Bounce Finance实现IDO代币发行
  10. 6.QT-简易计算器实现(详解)
  11. 一天一工程总结系列-7.2
  12. 【观察】神州数码:三生万物,云起神州
  13. CRMEB多商户1.7.1版本功能更新预告 预计12月更新
  14. 数据+人工智能+模型——北京市新一代交通仿真模型框架
  15. Graphics2D画图案例
  16. Linux回炉学习(一)
  17. php打开excel文件,PHP读取Excel文件的简单示例
  18. 基于FreeRTOS与MQTT的物联网技术应用系列——步进电机控制(四)FreeRTOS系统下LwIP-1.4.1的移植
  19. 一个人在家怎么做自媒体?4个靠谱平台,门槛低、变现很简单
  20. swap分区、硬盘和磁盘

热门文章

  1. px像素单位与IOS像素单位的换算
  2. [灵性] 人工智能与灵性修炼
  3. 水泥混凝土摊铺机的作业中促进施工进度的措施
  4. bash脚本计算转录本长度
  5. printf函数打印(一)—— 过程解析篇
  6. 佳能以影像产品和官方SDK为核心提供智慧影像解决方案
  7. TCP和UDP的区别及优缺点
  8. 【双11背后的技术】双11晚会背后的技术
  9. Excel里写VB脚本自定义函数
  10. 解决Mac系统启动台图标顺序混乱的问题