gulp打包

本文介绍了如何在项目中安装、配置和使用Gulp 4进行文件打包,包括任务创建、流API(如.src(), .dest(), .watch()等)、常用插件如cssmin、autoprefixer和gulp-uglify的运用,以及如何设置默认任务。
摘要由CSDN通过智能技术生成

gulp的安装(版本4)
npm install --global gulp =》 安装完之后只是可以使用命令gulp xxx
检测版本 gulp --version
卸载 npm uninstall --global gulp

准备gulpfile.js 文件
gulp 进行打包的工具
每个项目都需要一个 gulpfile.js
配置打包
运行读取guplfile,按照其配置打包
于src同级

在项目里边再次安装gulp
+项目里的gulp 是以第三方模块的形式出现额**
+专门提供配置配置打包流程的API
+在项目中安装项目依赖 npm i gulp

packpage.json
+dependencies //项目依赖
+devDependcencies //开发依赖 安装第三方依赖时 写$ npm install -dev

gulp API

1.gulp.task();
语法:gulp.task(任务名称,任务处理函数)
作用:创建一个基于流的任务
在任务函数里找到html源文件,进行压缩,打包,放入指定目录

2.gulp.src
语法:gulp.src(路径信息)
作用:找到源文件
书写方式
1.gulp.src(’./a/b.html)
找到指定一个文件
2.gulp.src(’./a/.html)
找到指定目录下,指定后缀文件
3.gulp.srv(’./a/’)
找到指令目录下的所有文件
4.gulp.src(’./a/
/
’)
找到 a目录下所有子目录里的所有文件
5.gulp.src(’./a/**/*.html)
找到 a目录下所有子目录里所有的 .html

3.gulp.dest()
语法:gulp.dest(路径信息)
作用:把一个内容放入指定目录内
例子:gulp.dest(’./abc)
把他接收的目录放到abc目录下

4.gulp.watch()
语法:gulp.watch(路径信息,任务名称)
作用:监控指定目录下的文件,一旦发生,重新执行后边的任务
例子:gulp.watch(’./src/pages/*.html’,htmlHandler);
当指定目录下的html 文件发生变化就会执行

5.gulp.series();
语法:gulp.series(任务1,任务2,任务3,…)
作用:逐个执行多个任务,前个任务结束,第二个任务开始

6.gulp.parallel()
语法:gulp.parallel(任务1,任务2,任务3,…)
作用:并行开始执行多个任务

7.pipe()
管道函数
所有的gulp APi 都是基于流
接收当前流,进入下一个流过程的管道函数
gulp.src().pipe(压缩任务).pipe(转码).pipe(gulp.dest(‘abc’))

gulp 常用插件
gulp 的各种插件就是用老执行各种各样的压缩混淆转码任务的
1.gulp -cssmin
下载 npm i gulp-cssmin -D
导入 const cssmin = require('gulp-cssmin)
导入以后得到一个处理流文件的函数
在管道函数里执行
2.gulp-autoprefixer
npm i gulp-autoprefixer -D
const autoprefixer = require('gulp-autoprefixer)
得到一个处理流文件的函数
在管道函数里使用,需要传递参数{browsers:[需要兼容浏览器]}
3.gulp-uglify
npm i -D gulp-uglify
把js文件压缩
导入const uglify = require(‘gulp-uglify’)
得到一个处理流文件的函数
在管道函数里使用
4.gulp-babel
进行es6->es5
@7 使用在gulp@3里
@8 使用gulp@4
下载;需要依赖另外两个包一起下载(@babel/core @babel/preset-env)
导入:只要导入const babel = require(‘gulp-babel’)
得到一个处理流文件的函数
在管道函数里使用,需要传递参数

//运行命令 gulp 任务名称

gulp@3 写法
gulp.task(‘cssHandler’,function(){
// return 后可捕捉到任务的结束
return gulp
.src(’./src/product/css/.css’) //找到源文件
.pipe(cssmin()) //压缩文件
.pipe(gulp.dest(’./dist/product/css/’))
})
gulp@4 写法
const cssHandler = function(){
// return 后可捕捉到任务的结束
return gulp
.src(’./src/product/css/
.css’) //找到源文件
.pipe(cssmin()) //压缩文件
.pipe(gulp.dest(’./dist/product/css/’))
}
导出
module.exports.cssHandler = cssHandler

配置默认任务 所有任务一起执行 (gulp.serires()或gulp.parallel())返回值则可直接当作任务函数执行
使用task 的方式创建默认任务
1.gulp.task('default,()=>{})
2.module.exports.default= () =>{}

下载del npm install -D del
导入 const del= require(‘del’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值