曾几何时还在使用grunt作为前端的构建工具,直到有一天同事向我推荐了gulp,在这里博主将不讨论gulp与grunt各自优势的比较,只为大家介绍gulp如何安装和使用。

Gulp 是用 nodejs 写的一个前端构建工具,他可以对sass、js、html、coffee等进行编译,并且提供了很多的插件,稍后会为大家介绍。

windows上的安装方法

1、下载node-v0.10.29-x64.msi 提取码:kj9b并安装

2、运行cmd,在全局环境下安装gulp

npm install -g gulp 

3、在项目的根目录下新建 package.json 文件

npm init

4、在当前项目目录下运行

npm install --save-dev gulp 

注意要有--save-dev ,不然保存不到package.json 中

这样我们的gulp 管理工具就安装完成了。

5、插件安装

  gulp 在编译时提供了各类的插件。

  诸如 gulp-sass 、fs 等等 下面列表是我在工作中常用的一些插件,并与代码相对应。

npm install path fs gulp-sass gulp-uglify gulp-minify-css gulp-wrapper gulp-replace gulp-webserver --save-dev gulp

这里提供给大家一个网站 https://www.npmjs.com/package/package  可以查到很多gulp 的插件,非常实用。

6、在项目文件夹新建gulpfile.js 插件引用内容如下:

var gulp = require('gulp');
var path = require('path');
var fs = require('fs'); // Plugins
var sass = require('gulp-sass');
var uglify = require('gulp-uglify');
var minifyCSS = require('gulp-minify-css');
var wrapper = require('gulp-wrapper');
var replace = require('gulp-replace');
var webserver = require('gulp-webserver');

7、gulpfile.js 编译代码

  gulp 主要提供了

gulp.src
gulp.dest
gulp.pipe

等方法。

编译sass 文件

gulp.task('sass', function() {
gulp.src([
'css/**/*.scss',
'!css/**/_*.scss'
])
.pipe(minifyCSS())
.pipe(wrapper({
header: '/* @update: ' + getNowDate() + ' */ \n'
}))
.pipe(gulp.dest('build/css'))
});

getNowDate是个自定义的获取当前时间戳的函数。

gulp.src 是路径,! 代表不包括什么类型文件。**可以是多级目录。

如何正确编译?

// 新建 task build
gulp.task('build', function() {
gulp.run(['css']);
});

好了 gulp就介绍到这里,其他诸如 js coffee html 等等 还有各种有趣实用的插件就等客官自己去探索吧!

前端开发构建工具gulp的安装使用的更多相关文章

  1. 前端自动化构建工具gulp的使用总结

    前端自动化构建工具gulp的使用总结 博主最近偶的空闲,在此对gulp的使用做一个总结,让小伙伴知道如何合理的使用gulp以及gulp的使用技巧. 谈到gulp,有人可能就会想到另外一个构建工具gru ...

  2. 前端自动化构建工具——gulp

    gulp是基于流的前端自动化构建工具. 一.环境配置 gulp是基于nodejs的,所以没有 nodejs 环境的要先去安装好 然后给系统配上gulp环境 npm install -g gulp 再到 ...

  3. 前端自动化构建工具 Gulp 使用

    一个月没写博客了,今天有时间,就写个gulp的入门使用吧.. 简介:gulp是一个前端自动化构建工具,可以实现代码的检查.压缩.合并……等等,gulp是基于Node.js的自动任务运行器 一.安装No ...

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

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

  5. 前端自动化构建工具——gulp环境搭建教程

    gulp是前端工程化的工具,它可以对html,css,js等代码和图片进行压缩,也可以对sass和less等预处理语言进行编译,代码部署.gulp学起来简单,用起来方便,大大提高我们工作效率. 这里可 ...

  6. 前端自动化构建工具--Gulp&&Webpack

    前端构建工具的作用可以认为是对源项目文件或资源进行文件级处理,将文件或资源处理成需要的最佳输出结构和形式. 在处理过程中,我们可以对文件进行模块化引入.依赖分析.资源合并.压缩优化.文件嵌入.路径替换 ...

  7. 前端自动化构建工具-gulp

    gulp 和grunt这两个是我知道的自动构建工具,但是说实话都没在项目中用过,不太清楚自动化构建是什么意思, 1.grunt和gulp有什么相同点和不同点? (1).易于使用:采用代码优于配置策略, ...

  8. 前端自动化构建工具gulp使用

    1. 全局安装 gulp: $ npm install --global gulp 2. 作为项目的开发依赖(devDependencies)安装: $ npm install --save-dev ...

  9. 前端自动化构建工具Gulp简单入门

    昨天听同事分享了Gulp的一些简单使用,决定自己也试一试. 一.安装 gulp是基于nodejs的,所以要先下载安装node(直接搜node,在官网下载就好了) 1.全局安装gulp npm inst ...

随机推荐

  1. HDU 2602 Bone Collector

    http://acm.hdu.edu.cn/showproblem.php?pid=2602 Bone Collector Time Limit: 2000/1000 MS (Java/Others) ...

  2. ARM学习笔记14——C语言和汇编相互套用

    这里,我们要准备两个文件,一个是汇编文件start.S,另一个是C文件led.c.汇编文件套用C文件中的开关灯函数,C文件套用汇编文件中延时函数. //start.S .global led_init ...

  3. CUDA编程-(2)其实写个矩阵相乘并不是那么难

    程序代码及图解析: #include <iostream> #include "book.h" __global__ void add( int a, int b, i ...

  4. 理解c++11正则表达式 (1)

    概要 C++11提出了正则表达式这个概念,只需在头文件中包含#include<regex>即可.我们可以完成: Match 将整个输入拿来比对匹配某个正则表达式 Search 查找与正则表 ...

  5. Linux 新手常用命令

    ubuntu的root用户默认是禁止的,需要手动打开才行 事实上ubuntu下的所有操作都用不到root用户,由于sudo的合理使用,避免了root用户下误操作而产生的毁灭性问题 root账号启用方法 ...

  6. JavaScript高级程序设计59.pdf

    dropEffect和effectAllowed 利用dataTransfer对象,传输数据.确定被拖动元素以及作为放置目标的元素能够接受什么操作,为此需要访问对象的两个属性dropEffect和ef ...

  7. ZOJ Problem Set - 1025解题报告

    ZOJ Problem Set - 1025 题目分类:基础题 原题地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=10 ...

  8. mysql引擎互转问题

    // InnoDB转MyISAM ALTER TABLE `tablename` ENGINE = MYISAM // MyISAM转InnoDB alter table tablename type ...

  9. js 日期插件 datepicker

    点击图片出现  时间 ,增加一个点击事件 <label for="" class="width80">创建日:</label> < ...

  10. A Practical Guide to Distributed Scrum - 分布式Scrum的实用指南 - 读书笔记

    最近读了这本IBM出的<A Practical Guide to Distributed Scrum>(分布式Scrum的实用指南),书中的章节结构比较清楚,是针对Scrum项目进行,一个 ...