gulp基础使用方法记录
一、开始
使用gulp,需知道4个API:
gulp.task():用来定义任务
,
格式:gulp.task(name[, deps], fn)
name 为任务名
deps 是当前定义的任务需要依赖的其他任务,为一个数组。当前定义的任务会在所有依赖的任务执行完毕后才开始执行。如果没有依赖,则可省略这个参数
fn 为任务函数,我们把任务要执行的代码都写在里面。该参数也是可选的。
gulp.src():用来读取文件
,
格式:gulp.src(globs[, options]),
globs 参数是文件匹配模式(类似正则表达式),用来匹配文件路径(包括文件名),当然这里也可以直接指定某个具体的文件路径。当有多个匹配模式时,该参数可以为一个数组。
options 为可选参数。通常情况下我们不需要用到。
gulp.dest():用来写文件的:,
格式:gulp.dest(path[,options])
path 为写入文件的路径
options 为一个可选的参数对象,通常我们不需要用到
gulp.watch():用来监视文件的变化,当文件发生变化后,我们可以利用它来执行相应的任务,例如文件压缩等,
格式:gulp.watch(glob[, opts], tasks)
glob 为要监视的文件匹配模式,规则和用法与gulp.src()
方法中的glob
相同。
opts 为一个可选的配置对象,通常不需要用到
tasks 为文件变化后要执行的任务,为一个数组
二、实例
需要先安装gulp
npm install -g gulp
手动建立一个gulpfile.js文件,作为入口,
初始化,引入gulp
npm init; npm install --save-dev gulp;
然后在gulpfile.js写入
var gulp = require('gulp');var plugins = require('gulp-load-plugins')();var src = {js: 'js/*.js',html: './*.html',css: 'css/*css',img: 'img/**' }var buildGulp = {// html 打包buildHtml: () => {gulp.src(src.html).pipe(plugins.minifyHtml()).pipe(gulp.dest('./dist'));},// css 打包buildCss: () => {gulp.src(src.css).pipe(plugins.minifyCss()).pipe(gulp.dest('dist/css'));},// js 打包buildJs: () => {gulp.src(src.img).pipe(plugins.imagemin()).pipe(gulp.dest('dist/img'));},// img打包buildImg: () => {gulp.src(src.js).pipe(plugins.uglify()).pipe(gulp.dest('dist/js'));}, };gulp.task('default',function(){gulp.start('build') });gulp.task('build', function(){for ( var i in buildGulp){buildGulp[i]();} });
我们用gulp-uglify压缩js, gulp-minify-css压缩css, gulp-minify-html压缩html,gulp-imagemin压缩图片
为避免在文件头部引入依赖时过去冗长,引入gulp-load-plugins来从package.json中引入依赖,通过调用实例中的方法来加载依赖,加载方式为按需加载
最后执行gulp,会从名称为default的task开始执行,打包文件,输出的文件由gulp.dest设置在dist目录下
转载于:https://www.cnblogs.com/lastnigtic/p/6974961.html
gulp基础使用方法记录相关推荐
- 27、Python 面向对象(创建类、创建实例对象、访问属性、内置类属性、对象销毁、类的继承、方法重写、基础重载方法、运算符重载、类属性与方法、下划线双下划线)
27Python面向对象(Python2) Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. ...
- YOLO v4 糅合方法记录
YOLO v4 糅合方法记录 记录YOLO v4中使用的各种网络技术,用最简短的话(就是懒)进行总结,并记录思考. ResNeXt 论文地址: https://link.zhihu.com/?targ ...
- 计算机基础教研活动记录,计算机文化基础集体备课活动记录.doc
<计算机文化基础>课程集体备课活动记录 时间 2011.3.3 地点 公共管理与技能系办公室 主持人 魏丽 研讨问题 信息的概念和表征,二进制,计算机系统 过程 记录 授课时间安排: 信息 ...
- Jupyter Notebook各种使用方法记录
Jupyter Notebook各种使用方法记录 一. Jupyter NoteBook的安装 1.1 新版本Anaconda自带Jupyter 目前,最新版本的Anaconda是自带Jupyter ...
- cannot create file怎么解决_内核问题解决方法记录
内核问题解决方法记录 ♪ 张释文 在内核开发这块,基本工作都是:打补丁,调补丁,调bug.最耗神的就是调bug,调bug的过程最花时间的一步是定位问题,基本上只要定位到问题,解决起来就容易些了(目前我 ...
- SaltStack介绍——SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的足以管理成千上万的服务器,和足够快的速度控制,与他们交流...
SaltStack介绍和架构解析 简介 SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的足以管理成千上万的服务器,和足够快的速度控制,与他们交流,以毫秒为单位.SaltSta ...
- Linux 下的NFS server 架设基础及方法
Linux 下的NFS server 架设基础及方法<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office: ...
- Linux基础优化方法(四)———远程连接缓慢优化
Linux基础优化方法(四)---远程连接缓慢优化 一.优化原因 二.优化方法 第一步:修改SSH服务配置文件 /etc/ssh/sshd_config 第二步:修改/etc/hosts配置文件 第三 ...
- Linux基础优化方法(三)———字符集编码设置优化
Linux基础优化方法(三)---字符集编码设置优化 一.什么是字符编码 二.编码GB2312.GBK.UTF-8 三.工作时有乱码的原因 四.进行优化 1.CentOS 6 ①.查看默认编码信息: ...
最新文章
- 可租赁、可定制的虚拟人居然还能这么玩?9月25日来百度大脑人像特效专场一探究竟!...
- centos php pdo mysql_mysql - CentOS6.5下php无法使用pdo - Pho
- docker,k8s学习笔记汇总
- 2019.8.13 sdfzoier
- 未定义变量: data_三、变量声明
- 栈溢出笔记1.1 函数调用过程
- Java HashMap源码剖析
- 聚奎中学2021高考成绩查询,江津2017全体高考考生的喜报
- python api接口调用_python 调用有道api接口的方法
- Python基础学习九 单元测试
- linux r语言 安装包下载,R语言安装程序包(示例代码)
- 中国知网如何下载外文文献
- HTML 网页特殊符号代码大全
- C++计算某天是该年的第几天
- 【题解】DZY Loves Math
- 中国资源卫星应用中心_数据下载
- 9X、2000、XP、2003所有注册表设置
- C语言C++编程学习:排序原理分析
- 什么是防火墙?服务器防火墙建议开启吗?
- 启贤老师:数字货币投资市场何为盈利 实仓客户心路历程