gulp学习。
安装gulp
安装gulp之前必须先安装node.js,然后在命令行里输入 $ npm install gulp-cli -g (-g 表示全局安装)然后在输入$ gulp -v ,验证,安装完成后再安装gulp,命令行里输入 $ npm install gulp 安装 再输入 $ gulp --version。
创建一个Gulp项目
在学习过程中,将一个名为package.json的文件作为根目录,在命令行内运行 $ npm init ,这将会为你的项目创建一个叫package.json的文件,文件会储存关于你的项目的信息,就像在项目里使用的依赖,在创建了package.json之后就可以通过 $ npm install gulp --save-dev (--save-dev 意思是把gulp作为依赖添加到当前项目。)在项目中只能装Gulp,这次我们是把Gulp安装到有package.json的项目中,而这个不是全局安装。现在可以在文件夹中看到一个node_modules文件夹,安装的gulp就在node_modules文件夹中。


我们已经做好了使用Gulp的准备工作,在我们使用之前必须清楚我们将要怎么使用Gulp。
1.使用Gulp我们先引入依赖

二、gulp常用插件
1、gulp-uglify(JS压缩)
安装:npm install gulp-uglify --save-dev
gulpfile.js代码如下:
var gulp = require('gulp');//引入依赖
var uglify= require("gulp-uglify");//引入插件
gulp.task('jsmin',function() {
gulp.src('src/**/*.js')//要压缩的文件
.pipe(uglify())//压缩
.pipe(gulp.dest('build/js'));//压缩到哪
});
gulp.task('default',['jsmin']);//注册默认任务
2、gulp-minify-html(html压缩)
安装:npm install --save-dev gulp-minify-html
代码如下:
var gulp = require('gulp');//引入依赖
var htmlmin= require("gulp-minify-html");//引入插件
gulp.task('minify-html',function() {
gulp.src('src/**/*.html')//要压缩的html文件
.pipe(htmlmin())//压缩
.pipe(gulp.dest('build'));//压缩到哪,
});
gulp.task('default',['minify-html']);//注册默认任务
3. gulp-concat (js文件合并)
安装:npm install --save-dev gulp-concat
代码如下:
var gulp = require('gulp');//引入依赖
concat= require("gulp-concat");//引入插件
gulp.task('concat',function() {
gulp.src('src/**/*.js') //要合并的文件
.pipe(concat('index.js')) //合并匹配到的js文件并命名为 "index.js"
.pipe(gulp.dest('build/js'));//合并完保存到哪
});
gulp.task('default',['concat']);//注册默认任务
4、gulp-clean-css(压缩css)
安装:npm install gulp-clean-css --save-dev
Gulpfile.js代码如下:
var gulp= require('gulp');//引入依赖
var mincss= require("gulp-clean-css");//引入插件
gulp.task('cssmin',function(){
gulp.src('css/*.css')//要压缩的css
.pipe(mincss())//压缩
.pipe(gulp.dest('dest'))//压缩完保存到哪
});gulp.task('default',['cssmin'])//注册默认任务
5、gulp-less
安装:npm install gulp-less --save-dev
Gulpfile.js代码如下:
var gulp = require('gulp'),//引入依赖
var less= require("gulp-less");//引入插件
gulp.task('compile-less',function() {
gulp.src('src/less/*.less')//
.pipe(less())
.pipe(gulp.dest('build/css'));
});
gulp.task('default',['compile-less']);//注册默认任务
6、gulp-sass
安装:npm install gulp-sass --save-dev
代码如下:
var gulp = require('gulp');//引入依赖
var sass= require("gulp-sass");//引入插件
gulp.task('compile-sass',function() {
gulp.src('src/sass/*.sass')
.pipe(sass())
.pipe(gulp.dest('build/css'));
});
gulp.task('default',['compile-sass']);//注册默认任务
7、gulp-imagemin(图片压缩)
安装:npm install –save-dev gulp-imagemin
代码如下:
var gulp = require('gulp');//引入依赖
var imagemin = require('gulp-imagemin');//引入插件
gulp.task('uglify-imagemin',function() {
returngulp.src('src/images/*');//压缩图片的路径
.pipe(imagemin())//压缩
.pipe(gulp.dest('build/images'));//压缩完保存的路径
});
gulp.task('default',['uglify-imagemin']);//注册默认任务
gulp学习。的更多相关文章
- gulp学习笔记4
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 之前的任务都是单个的,比较简单.接下去我们开始引用多个插件,一次性把任务搞定,省 ...
- Gulp学习指南之CSS合并、压缩与MD5命名及路径替换(转载)
本文转载自: Gulp学习指南之CSS合并.压缩与MD5命名及路径替换
- gulp学习笔记1
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1.安装gulp 首先我们需要node环境,nodejs安装这里就不说了,不懂的 ...
- gulp学习笔记2
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1. 压缩 CSS 压缩 css 代码可降低 css 文件大小,提高页面打开速度 ...
- gulp学习笔记3
gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1.编译sass Sass 是一种 CSS 的开发工具,提供了许多便利的写法,大 ...
- Gulp 学习总结
Gulp 自动化工具开发非常方便,便于上手,值得使用. 一.Gulp安装 gulp是基于NodeJS运行的,所以需要想安装NodeJS. http://nodejs.org/download/ 安装 ...
- gulp 学习笔记
以这次学习gulp为契机来同时了解和学习node相关的知识和概念,比如 npm,package.json等,为以后学习node打好基础. 目录 npm 查看模块 安装模块 ...
- gulp学习笔记——最好的学习文档是官网
官网:http://www.gulpjs.com.cn/docs/api/ 当然还有一个博客写的也很好,当我看不下去官网的时候,这个帮助了我很多,明了易懂:http://www.ydcss.com/a ...
- 前端自动化构建工具 gulp 学习笔记 一、
一.我对gulp的初期理解 是一种前端辅助开发工具 可以帮你把js,css,img等文件 合并.压缩,图片好像是合并为精灵图,合并为精灵图之后,还会生成一个css样式表. 官方解说是:基于流的自动化构 ...
- gulp学习-metamask前端使用
https://www.gulpjs.com.cn/docs/getting-started/ ,这个是3.9.0版本 后面发现安装的版本是4.0.0,看下面这个: https://github.co ...
随机推荐
- Android之apk优化
公司的apk越做越大...作为一个有追求的程序员,我觉得有必要给apk瘦身了... 优化之前,先来分析一下apk结构,下面附上一张apk结构图: apk结构.png 由于我这个项目集成了百度地图.百度 ...
- Android 开发工具类 34_OpenFileUtil
匹配文件后缀名 MIME 类型. import java.io.File; import android.content.Context; import android.content.Intent; ...
- 详解C#特性和反射(三)
类型信息(Type Information)用来表示类型声明的信息,通过抽象基类System.Type的实例存储这些信息,当使用反射时,CLR获取指定类型的Type对象,通过这个对象即可访问该类型的任 ...
- gitlab的md文件内使用锚点
markdown中使用锚点的格式: [要显示的内容](#锚点的链接) 如: [工具](#tool) 又因为再markdown中每一个标题都默认是锚点,所以事情就简单了 # test ## conten ...
- Ceph/共享存储 汇总
Ceph 存储集群 - 搭建存储集群 Ceph 存储集群 - 存储池 Ceph 块设备 - 命令,快照,镜像 Ceph 块设备 - 块设备快速入门 OpenStack 对接 Ceph CentOS7 ...
- 大佬带你深入浅出Lua虚拟机
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由鹅厂优文发表于云+社区专栏 作者:郑小辉 | 腾讯 游戏客户端开发高级工程师 写在前面:本文所有的文字都是我手工一个一个敲的,以及本文 ...
- 精读JavaScript模式(一)
一.前言 为什么读这本书? 其实做前端开发,一个需求给不同工作经验的人去做,只要完工时间不算苛刻,大家都是能实现的.功能实现虽然大致相同,但当我们回归代码去看实现方式,代码书写的美观程度,以及实现的方 ...
- Solr 访问 403 错误
把 Solr 基础环境搭建好后访问发现会出现 403 错误: 解决方法: 找到自己 Tomcat 目录下的 solr ,找到 ...\solr\WEB-INF\web.xml,然后把 169 - 1 ...
- 百度前端技术学院task35源代码——听指令的小方块3
任务描述 如图,命令输入框由input变为textarea,可以允许输入多条指令,每一行一条 textarea左侧有一列可以显示当前行数的列(代码行数列),列数保持和textarea中一致 当text ...
- java多线程框架
JDK5中的一个亮点就是将Doug Lea的并发库引入到Java标准库中.Doug Lea确实是一个牛人,能教书,能出书,能编码,不过这在国外还是比较普遍的,而国内的教授们就相差太远了. 一般的服务器 ...