在终端定位到你要创建目录的地方,输入

sudo mkdir js

创建文件夹,这个文件夹就是放你要压缩js文件的地方

输入

sudo vim gulpfile.js

这个js就是写gulp所有的配置信息,

在这个js中输入:

var gulp=require ("gulp") //获取gulp

var uglify=require ("gulp-uglify") //获取gulp-ublify组建

gulp.task("script", function(){
gulp.src("js/*.js") //找到js文件夹下的所有js
.pipe(uglify()) //压缩文件
.pipe(gulp.dest("dist/js")) //压缩完成后的文件另存到dist/js/目录下
})
gulp.task(name, fn) - 定义任务,第一个参数是任务名,第二个参数是任务内容。
gulp.src(path) - 选择文件,传入参数是文件路径。
gulp.dest(path) - 输出文件
gulp.pipe() - 管道,你可以暂时将 pipe 理解为将操作加入执行队列

此时你还需要安装一个局域的gulp(我没安装各种报错)

在gulplify.js的平级下打开终端,输入

sudo cnpm install gulp      //此处不需要 “-g”

然后安装gulp-uglify模板,命令如下:

sudo cnpm install gulp-uglify

输出如果没有扎眼的红色提示则表示安装成功

这时输入

gulp script

如果输出中有Finished "script" after ...即表示压缩成功

这时你去文件夹目录下便能看到一个叫dist的文件夹,这个文件夹下的js文件就是压缩成功后的代码

当然这样如果js下的文件有变化就需要自己重新输入一遍gulp script,不是很人性化
所以加入一条自动检测代码:

gulp.task('auto', function () {
// 监听文件修改,当文件被修改则执行 script 任务
gulp.watch('js/*.js', ['script'])
})

当然watch跑起来就进入运行状态,此时你不能再输入别的操作,当然想要输入别的命令则需要关闭watch即可,命令:

ctrl+C(Mac为Control +C)

当然我们也可以把它定义成默认事件,只需要在终端输入gulp然后回车便可让程序运行,代码如下:

gulp.task('default', ['script', 'auto']);

最终版代码:

var gulp = require ("gulp")

var uglify = require("gulp-uglify")

gulp.task("script", function(){
gulp.src("js/*.js").pipe(uglify()).pipe(gulp.dest("dist/js"))
})
gulp.task("auto",function(){
gulp.watch("js/*js",["script"])
})
gulp.task("default",["script","auto"])

最新文章

  1. Java Web应用的开发环境配置
  2. 《BI那点儿事—数据的艺术》目录索引
  3. curl命令常见用法汇总 good
  4. win8.1下解决Visual C++不兼容的方法
  5. [jobdu]把数组排成最小的数
  6. Android中View绘制优化二一---- 使用<include />标签复用布局文件
  7. 同时显示多个 Notification
  8. CentOS 7 网卡命名修改为ethx格式
  9. php处理登录、添加数据、删除数据和修改数据
  10. mysq常用l性能分析方法
  11. JS windows对象的top属性
  12. SQL 游标的写法
  13. 写入Log错误日志
  14. greenplum加密
  15. 彻底搞懂js原型与原型链
  16. SQL 分隔字符串
  17. 配置Windows 2008 R2 防火墙允许远程访问SQL Server 2008 R2
  18. .gitlab-ci.yml简介
  19. js 复制文本到剪贴板
  20. 学习笔记之Sublime Text

热门文章

  1. 15分XX秒后订单自动关闭(倒计时)
  2. WinForm中ListBox的使用
  3. Ecliplse导入maven项目applicationContext.xml报错:Referenced file contains errors (http://www.springframework.org/schema/context/spring-context-3.1.xsd). For more information, right click on the message in
  4. h2数据库 安装部署
  5. 上课总结-模电chapter 1
  6. 为什么要使用MQ消息中间件?
  7. kali linux之防火墙识别
  8. 【BZOJ3622】已经没什么好害怕的了 容斥原理+dp
  9. Docker安装FastDFS
  10. Python 简单说明与数据结构