安装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. Installation failed with message...It is possible that this issue is resolved by uninstalling an existing version of the apk if it is present, and then re-installing.

    错误弹窗如图: Installation failed with message Failed to finalize session: INSTALL_FAILED_TEST_ONLY:instal ...

  2. idea @Override is not allowed when implementing interface method

    转自:http://blog.csdn.net/shenya2/article/details/50460447 在编码过程发现报错:@Override is not allowed when imp ...

  3. 关于SAN和NAS的区别-转

    什么是SAN与NAS By  王文平 发表于 2006-7-10 18:03:53  NAS和SAN字面上相似,并且都是新型数据存储模式,但这二者是完全不同的,针对不同方向的技术. 什么是SAN(St ...

  4. 第一章 Java Web工作原理

    一:在本章我们将学到如下的内容 >HTTP协议原理 >服务器端Web编程原理 >Servlet与Web容器 >Java Web应用程序的组成 >Tomcat介绍 一:1. ...

  5. UIKit 框架之UIView一

    - (id)initWithFrame:(CGRect)aRect //通过一个矩形对象初始化 Configuring a View’s Visual Appearance //配置视觉展示 @pro ...

  6. 并发编程之 ConcurrentHashMap(JDK 1.8) putVal 源码分析

    前言 我们之前分析了Hash的源码,主要是 put 方法.同时,我们知道,HashMap 在并发的时候是不安全的,为什么呢?因为当多个线程对 Map 进行扩容会导致链表成环.不单单是这个问题,当多个线 ...

  7. ASP.NET编辑与更新数据(非GridView控件实现)

    Insus.NET在实现<ASP.NET开发,从二层至三层,至面向对象 (5)>http://www.cnblogs.com/insus/p/3880606.html 中,没有把数据编辑与 ...

  8. [bug]不包含“AsNoTracking”的定义

    摘要 在使用ef做查询优化的时候我们会用到AsNoTracking方法,但如果不引入命名空间,你就会出现不包含“AsNoTracking”的定义的错误. 解决办法 引入命名空间:System.Data ...

  9. sqlserver 删除表中数据 id 从1开始

    TRUNCATE  TABLE  TbName   --TbName是表名 但如果TbName中某些字段与其它表有主外键关系,会报错: 无法截断表 'Plants',因为该表正由 FOREIGN KE ...

  10. [android] WebView与Js交互

    获取WebView对象 调用WebView对象的getSettings()方法,获取WebSettings对象 调用WebSettings对象的setJavaScriptEnabled()方法,设置j ...