Angular技术库
  • 简介
  • 研究热点
    • 单页面登录
    • 单页面服务器渲染
  • 项目实战
    • 目录结构
    • 模块开发流程
    • 公共模块编辑
    • UI使用
    • 工具库
      • util模块
      • filter模块
    • 表单验证
  • 整体框架
    • 环境搭建
      • Windows
      • MAC Linux
    • 示例项目
    • 开发调试
      • 编译JS
      • 编译CSS
      • 编译HTML
      • 编译Bower
      • 服务器启动
      • 与后端服务通讯
    • Gulp文档
      • Gulp API
      • 插件列表
      • Gulp构建
    • Gulp文档
    • 示例项目
  • Angular文档
    • 指令
    • 引导
    • 单页面
    • 基于requireJS和angularJS的前端技术架构
    • 数据共享
    • 模块加载
    • 事件循环
  • SASS文档
    • SASS特性
  • ES6文档
    • ECMAScript前导
    • ECMAScript6特性介绍
    • ES6特性筛选
  • JavaScript文档
    • 匿名函数定义
    • Function
      • 原生prototype
      • 自定义prototype
  • RequireJS
  • Node文档
  • 架构师
  • 时间轴
    • 2016-07-13
    • 2016-06-21
    • 2016-06-14
    • 2016-06-07
    • 2016-05-31
Powered by GitBook
On this page
  • 1.整体
  • gulp
  • rimraf
  • open
  • lazypipe
  • lodash
  • gulp-load-plugins
  • gulp-connect
  • gulp-run-sequence
  • gulp-filter
  • gulp-if
  • gulp-plumber
  • gulp-sourcemaps
  • 2.JS
  • gulp-babel
  • babel-preset-es2015
  • gulp-uglify
  • 3.CSS
  • gulp-sass
  • gulp-compass
  • gulp-autoprefixer
  • gulp-minify-css
  • 4.HTML
  • gulp-inject
  • wiredep
  • gulp-minify-html
  • gulp-useref
  • gulp-rev
  • gulp-rev-collector
  1. 整体框架
  2. Gulp文档

插件列表

PreviousGulp APINextGulp构建

Last updated 7 years ago

使用Gulp构建项目,需要使用到很多其他NPM插件,下面是我们的项目会使用到的插件列表。

1.整体

gulp

项目构建主插件

rimraf

文件删除接口,主要用户清除构建目录以便于重新构建,支持通配符 rimraf(src)

open

使用浏览器打开网页 open(url)

lazypipe

延迟的管道接口,用户管道处理时,公共方法的提取 lazypipe()

lodash

静态方法库,提供了很多实用的JS方法,如判断对象是否为数组等。项目中推荐使用该工具,其API文档地址为:

gulp-load-plugins

自动加载gulp插件的管理插件,避免手动去包含每个插件,可以使用该插件加载所有gulp-前缀的插件。 使用方法:

var $ = require("gulp-load-plugins")();
var gulp = require("gulp");

gulp.task("css", function(){

    gulp.src("src/**/*.css")

        .pipe($.sass({ outputStyle: 'expanded'}).on('error', $.sass.logError))

        .pipe($.if(config.system.compresses, $.minifyCss()))

        .pipe(gulp.dest("build"));
});

加载该组件后,可以通过 $. 格式调用所有gulp-插件,如调用gulp-filter插件的方法,可以使用$.filter() 上面代码中,使用了$.sass()、$.if()、$.minifyCss(),分别对应插件gulp-sass、 gulp-if、 gulp-minify-css, 这几个插件无需显示加载,但需要存在于项目中(即node_modules文件夹中)

gulp-connect

静态服务启动、管理插件

gulp-run-sequence

执行gulp任务插件,使用方法为

var runSequence = require("gulp-run-sequence");
gulp.task("task1", function(){
    console.log("this is task 1.");
})
gulp.task("task2", function(){
    console.log("this is task 2.");
})
gulp.task("task3", function(){
    console.log("this is task 3.");
})

runSequence(['task1', 'task2'], 'task3', ['task4', 'task5'], ....);

task1和task2将会同步执行,执行结束后,task3再执行,以此类推。

gulp-filter

文件过滤插件,如过滤JS后执行JS处理,然后再过滤CSS执行CSS文件处理

gulp-if

条件判断插件 gulpIf(condition, runfunction)

gulp-plumber

统一错误处理插件

gulp-sourcemaps

在JS和CSS中添加map文件地址

2.JS

gulp-babel

JS处理插件,如处理ES6转义为ES5

babel-preset-es2015

ES6转义为ES5

gulp-uglify

JS压缩插件

3.CSS

gulp-sass

SASS转义为CSS

gulp-compass

Compass语法(SASS增强版)转义为CSS插件

gulp-autoprefixer

CSS自动添加浏览器兼容前缀

gulp-minify-css

CSS压缩插件

4.HTML

gulp-inject

自动将JS、CSS插入HTML

wiredep

将bower下的模块插入HTML

gulp-minify-html

HMTL压缩插件

gulp-useref

通过解读HTML中的JS、CSS文件链接对JS、CSS进行合并,然后更新HTML中的文件地址

gulp-rev

自动添加文件版本号

gulp-rev-collector

自动添加文件版本号

https://lodash.com/docs。