博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
前端自动化构建之Gulp的使用(学习笔记)
阅读量:6092 次
发布时间:2019-06-20

本文共 2308 字,大约阅读时间需要 7 分钟。

Gulp是一款基于流的前端自动化构建工具,类似于任务管理器,可以自动化的帮助我们完成开发过程中大量的重复工作,如预处理语言的编译,jscsshtml压缩混淆,图片尺寸优化等。其中文网的网址为 ,官网地址为 。下面来介绍Gulp在项目中的使用步骤。

一、Gulp使用的基本步骤

1、全局安装gulp命令行工具

在安装和使用gulp之前,必须先确保node环境已经配置成功,具体步骤可参考文章 。完成node环境的安装之后,我们可以在任意目录下,打开cmd,键入命令-> npm install gulp -g 来进行gulp的全局安装。可以通过命令-> gulp -v来验证gulp是否安装成功。如下图所示:

图片描述

2、生成项目配置文件

我们在当前的项目文件目录下,打开cmd,键入命令-> npm init,可以全部回车即可在项目文件夹的根目录下生成一个package.json的配置文件。

3、将gulp作为项目的开发依赖进行安装

在当前的项目文件目录下,打开cmd,键入命令-> npm install gulp --save-dev。(因为gulp包当中即包含工具,也包含一些编程的API,所以我们需要将gulp作为项目的开发依赖安装到项目本地。)

4、创建任务主文件

我们在项目文件夹的根目录下创建一个gulp的任务主文件,其文件名固定为gulpfile.jsgulp用于帮助我们机械化的完成一些重复的工作,其机制就是将重复的工作抽象成一个个的任务,故我们需要在主文件gulpfile.js当中进行任务的注册。其基本代码结构为:

var gulp = require('gulp');      // 载入gulp模块gulp.task('default',function(){  //注册一个任务    //当gulp执行default这个任务时,会自动执行该函数。});

二、Gulp的使用示例

1、使用gulp完成文件自动化拷贝与监听

当我们需要将开发阶段的源码目录src中的文件自动拷贝至发布上线阶段的文件目录dist当中,并且监听源文件的变化,并及时自动更新拷贝文件。gulpfile.js当中的示例代码如下所示:

var gulp = require('gulp');      gulp.task('copy',function(){    //注册一个拷贝的任务    gulp.src('./src/index.html')        .pipe(gulp.dest('./dist/'));});//当执行copy这个任务时,即可将src目录下的index.html文件拷贝至dist文件夹当中,文件名不变。gulp.task('listen',function(){   //注册一个监听的任务    gulp.watch('./src/index.html',['copy']);//监听src目录下的index.html文件,一旦文件发生变化并保存时,即可执行任务数组当中的copy任务。});

在完成任务的注册之后,即可在项目文件夹下,打开cmd,键入命令-> gulp listen 即可。

2、使用gulp自动完成less文件的编译、压缩与合并

gulp可以配合许多插件(plugins)来帮助我们完成这些重复性任务,当前支持的插件列表可以见官网 。例如我们可以使用插件gulp-less来完成less文件的编译成css文件,使用插件gulp-cssmin来完成css文件的自动压缩,使用插件gulp-concat-css来完成多个css文件的合并,使用插件gulp-rename来完成css文件的重命名。

首先在安装这些插件,在项目文件夹下,打开cmd,键入命令-> npm install gulp-less gulp-cssmin gulp-concat-css gulp-rename --save-dev。再在gulpfile.js当中进行插件模块包的引入与任务的注册,示例代码如下所示:

var gulp = require('gulp');var less = require('gulp-less');var cssmin = require('gulp-cssmin');var concat = require('gulp-concat-css');var rename = require('gulp-rename');      gulp.task('style',function(){    gulp.src('./src/style/*.less')     //获取到style目录下所有的less文件        .pipe(less())                   // 完成less文件编译,成为css文件        .pipe(concat('all.css'))       // 将多个css文件合并为一个all.css文件        .pipe(cssmin())                // 完成css文件的压缩        .pipe(rename({suffix:'.min'})) //重命名文件名为all.min.css        .pipe(gulp.dest('./dist/style/')); //将all.css文件复制到dist文件夹的style目录下,文件名不变});

在完成任务的注册之后,即可在项目文件夹下,打开cmd,键入命令-> gulp style 即可。

转载地址:http://lpmwa.baihongyu.com/

你可能感兴趣的文章
js 的 slice方法
查看>>
Java网络编程(一)流
查看>>
Unix整理笔记——安全性——里程碑M13
查看>>
【斗医】【1】Web应用开发20天
查看>>
Yii 2 —— session
查看>>
烂泥:haproxy学习之https配置
查看>>
给C语言初学者的忠告——计算机达人成长之路(27)
查看>>
【思考】互联网产业发展趋势
查看>>
【Python】软件管理工具--pip
查看>>
设计模式系列——单例模式
查看>>
简单理解Vue中的nextTick
查看>>
DockerSwarm 集群环境搭建
查看>>
react躺坑记
查看>>
nginx 站点配置 例子
查看>>
SpringJpa分页
查看>>
Kotlin 基础-程序结构(上)
查看>>
微信小程序避坑指南
查看>>
git pull 冲突解决
查看>>
生产级幂等解决方案
查看>>
gradle初识buildscript与allprojects
查看>>