安装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学习。的更多相关文章

  1. gulp学习笔记4

    gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 之前的任务都是单个的,比较简单.接下去我们开始引用多个插件,一次性把任务搞定,省 ...

  2. Gulp学习指南之CSS合并、压缩与MD5命名及路径替换(转载)

    本文转载自: Gulp学习指南之CSS合并.压缩与MD5命名及路径替换

  3. gulp学习笔记1

    gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1.安装gulp 首先我们需要node环境,nodejs安装这里就不说了,不懂的 ...

  4. gulp学习笔记2

    gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1. 压缩 CSS 压缩 css 代码可降低 css 文件大小,提高页面打开速度 ...

  5. gulp学习笔记3

    gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 1.编译sass Sass 是一种 CSS 的开发工具,提供了许多便利的写法,大 ...

  6. Gulp 学习总结

    Gulp 自动化工具开发非常方便,便于上手,值得使用. 一.Gulp安装 gulp是基于NodeJS运行的,所以需要想安装NodeJS.  http://nodejs.org/download/ 安装 ...

  7. gulp 学习笔记

    以这次学习gulp为契机来同时了解和学习node相关的知识和概念,比如 npm,package.json等,为以后学习node打好基础. 目录   npm     查看模块     安装模块      ...

  8. gulp学习笔记——最好的学习文档是官网

    官网:http://www.gulpjs.com.cn/docs/api/ 当然还有一个博客写的也很好,当我看不下去官网的时候,这个帮助了我很多,明了易懂:http://www.ydcss.com/a ...

  9. 前端自动化构建工具 gulp 学习笔记 一、

    一.我对gulp的初期理解 是一种前端辅助开发工具 可以帮你把js,css,img等文件 合并.压缩,图片好像是合并为精灵图,合并为精灵图之后,还会生成一个css样式表. 官方解说是:基于流的自动化构 ...

  10. gulp学习-metamask前端使用

    https://www.gulpjs.com.cn/docs/getting-started/ ,这个是3.9.0版本 后面发现安装的版本是4.0.0,看下面这个: https://github.co ...

随机推荐

  1. MySQL 分组之后如何统计记录条数 gourp by 之后的 count()

    SELECT count(*) FROM 表名 WHERE 条件 // 这样查出来的是总记录条 SELECT count(*) FROM 表名 WHERE 条件 GROUP BY id //这样统计的 ...

  2. 【转】谷歌三大核心技术(二)Google MapReduce中文版

      Google MapReduce中文版     译者: alex   摘要 MapReduce 是一个编程模型,也是一个处理和生成超大数据集的算法模型的相关实现.用户首先创建一个Map函数处理一个 ...

  3. JavaScript -- Window-Interval

    -----031-Window-Interval.html----- <!DOCTYPE html> <html> <head> <meta http-equ ...

  4. Intellij IDEA Spring Boot 项目Debug模式启动缓慢问题

    问题 Intellij IDEA Spring Boot 项目Debug模式启动缓慢 环境 os: windows10 idea :2018.1 解决方法 去除所有断点就正常了,很诡异,原因未知.

  5. sql-原生jdbc连接7步

    原生jdbc链接一般分为7步, 来获取链接并执行sql语句 1, 准备4大参数 static { url = "jdbc:mysql://localhost:3306/test" ...

  6. 面试题----gcc的编译流程

    gcc编译流程 一.    编译与处理指令: gcc -E hello.c -o a.c 如果不使用-o指定输出的文件,会默认输出到终端.所以建议使用同时使用-o选项. 还要注意:编译时会保留#pra ...

  7. Linux交换空间和内存不足

    交换空间 交换技术就是将一页内存复制到预先设定的硬盘上的交换空间,来释放该页占用内存.物理内存和交换空间的和就是可提供的虚拟内存的总量.Linux有两种形式的交换方式,分别是交换分区,交换文件. 优点 ...

  8. <Think Python>中统计文献单词的处理代码

    def process_line(line, hist):    """Adds the words in the line to the histogram. Modi ...

  9. Spring @ResponseStatus

    @ResponseStatus这个注解确实是个令我头疼的注解. 先记录下@ResponseStatus注解的定义. 记录几个得到的信息:@ResponseStatus声明在方法.类上, Spring3 ...

  10. 七台机器部署Hadoop2.6.5高可用集群

    1.HA架构注意事项 两个Namenode节点在某个时间只能有一个节点正常响应客户端请求,响应请求的节点状态必须是active standby状态要能够快速无缝切换成active状态,两个NN节点必须 ...