一.了解gulp二.准备使用gulp三.gulp常用的API四.gulp初体验五.添加一个打包css的任务六.添加一个打包sass的任务七.添加一个打包js的任务八.添加一个打包html的任务九.添加其他文件的移动任务十.创建一个默认任务十一.创建一个删除任务十二.gulp启动服务十三.gulp配置代理
一.了解gulp
基于流的前端自动化打包构建工具,可以对文件进行压缩、整合、移动、混淆。
除了
gulp
,前端还有一个基于js文件的打包构建工具,webpack
。什么是流
那什么是流呢?我们常说的流主要分两种:
- 流文件:将文件一段一段传输的文件传输格式
- 流格式:从源头开始一步一步经过加工,每一步骤都依赖于上一步的结果,最终给出完整成品的过程
而gulp就是基于流格式的打包构建工具。
gulp的依赖环境
gulp依赖于node环境进行开发,因为gulp的底层就是对node中包括http、fs等读写文件模块进行封装形成的
gulp的作用
- 转码(自动添加前缀)、压缩css文件
- 转码(ES6转ES5)、压缩js文件
- 转码(对格式的转换)、压缩html文件
- 对静态资源文件的处理
- 对第三方文件的处理
gulp的安装
gulp的检测
gulp的卸载
gulp的版本
- gulp@3 (安装后检测版本后的打印一般类似于:gulp 3.9.1)
- gulp@4 (安装后检测版本后的打印一般类似于:gulp cli 2.3.0)
gulp 全局工具安装完毕
能给你的电脑提供一个启动gulp的环境
二.准备使用gulp
- 准备一个项目,并确定目录结构
src放源代码,dist放编译后的代码(一般由gulp自动生成)
- 准备一个gulpfile.js文件
用于编写本项目的打包配置,是gulp进行打包的依据
- 在项目里再次安装gulp
注意:项目里的gulp是以第三方模块的形式出现的
为什么要安装?
全局安装的gulp是让电脑拥有执行gulp相关指令的能力
项目安装的gulp是让你可以在导入后使用gulp.xxx() 方法
怎样安装?
gulp是用来打包的,只用于开发环境中,所以安装到package.json(记录第三方依赖的文件)的devDependencies(记录项目开发环境的依赖,dependencies记录开发、上线后都需要用到的内容)中
- 在gulpfile.js中编写配置
- gulp依赖于node环境运行,书写gulpfile.js文件就按照node的模块化语法进行书写(CommonJS)
- 编写本项目的打包流程
- 编写完后,执行gulp指令运行整个打包流程
三.gulp常用的API
四.gulp初体验
首先导入gulp以及要用的模块
gulp@3 的标准书写语法
gulp@4 的标准书写语法,需要在gulpfile.js文件中暴露定义的函数
五.添加一个打包css的任务
其中autoPrefixer是需要带参数的,但是在项目拥有package.json时可以把参数编写到该文件,如下图:
autoPrefixer的作用就是对浏览器做版本兼容,会将css样式自动添加前缀以适用版本,自动添加如下图:
六.添加一个打包sass的任务
即可以用gulp配置任务来转换sass,也可以直接在电脑安装sass工具转换sass文件为css。
这里记录用gulp配置任务转换sass的方法,首先在项目里下载gulp-sass,如下图:
关于sass转码的适用如下图
七.添加一个打包js的任务
使用前安装如下插件:
编写打包js的任务
八.添加一个打包html的任务
使用前安装如下插件:
编写打包html的任务:
九.添加其他文件的移动任务
十.创建一个默认任务
十一.创建一个删除任务
gulp构建后生成的文件,在第二次构建时不会自动覆盖和清理,需要配置任务删除之前构建生成的文件
十二.gulp启动服务
十三.gulp配置代理
详细API调用请查阅gulpjs.com