Gulp的安装与使用

一、Gulp的安装

1、全局安装 gulp-cli

gulp-cli是gulp的命令行工具,它需要全局安装,以便gulp能够在命令提示符中直接运行。

// 安装命令:
npm install gulp-cli@2.3.0 -g	

// -g global,表示为全局安装

2、 在项目中安装 gulp

本地gulp位于本地项目的node_modules目录下,包含了gulpfile所需的所有函数和API。

作用:1、加载和运行gulpfile(gulpfile.js)中的构建指令。2、暴露API供gulpfile使用。

// 安装命令:
// 1、初始化项目
npm init

// 2、局部安装gulp
npm install gulp@4.0.2 --save-dev
// save-dev表示将gulp作为devDependencice(开发依赖)保存到package.json文件中

//3、查看gulp版本,查看是否安装成功
gulp -v

3、构建项目

01、在项目根目录下建立**gulpfile.js(不可更改)**文件

02、重构项目的文件夹结构 src目录放置源代码文件 ,dist目录放置构建后文件

03、在gulpfile.js文件中编写任务.(gulp.task()建立任务…)

const gulp = require('gulp');
// 使用gulp.task()方法建立任务
gulp.task('任务名称', (callback) => {

	// 获取要处理的文件
	gulp.src('要处理文件路径')

    // 将处理后的文件输出到指定目录
    .pipe(gulp.dest('指定目录路径’));
	callback()
});

04、在命令行工具中执行gulp任务

gulp 任务名

示例:

二、Gulp常用插件的使用

0、基本步骤:

01、下载

npm install 插件名称

02、引用

const gulp = require('gulp'); //首先引用gulp模块

const 引用插件名称 = require('插件名称');

03、调用

引用插件名称()

1、gulp-htmlmin

作用:压缩html文件

2、gulp-file-include

作用:公共文件包含

示例:压缩并抽取HTML中的公共代码

下载插件

npm install gulp-htmlmin

npm install gulp-file-include

新建common目录,在公共目录新建公共代码部分文件

删除原文件中公共部分,使用@@include()方法引入公共部分

// 引入gulp模块
const gulp = require('gulp');
// 引入htmlmin插件
const htmlmin = require('gulp-htmlmin')
// 引入fileInclude
const fileInclude = require('gulp-file-include')

// 建立任务:压缩html以及抽取公共部分
gulp.task('htmlmin', (callback) => {
    // 获取要处理的html文件
    gulp.src('./src/*.html')
        // 抽取html公共部分的插件
        .pipe(fileInclude())
        // 压缩html文件中的代码
        .pipe(htmlmin({
            collapseWhitespace: true
        }))
        // 文件的输出路径
        .pipe(gulp.dest('./dist'))
    callback();
})

// 执行任务
gulp htmlmin

3、gulp-less

作用:less语法转化

4、gulp-csso

作用:压缩css文件

示例:压缩CSS文件并转换Less语法

下载插件

npm install gulp-htmlmin

npm install gulp-file-include

// 引入gulp模块
const gulp = require('gulp');
// 引入gulp-less
const less = require('gulp-less')
// 引入gulp-csso
const csso = require('gulp-csso')

// 建立任务:压缩css代码并转换less语法
gulp.task('cssmin', callback => {
    // 获取文件.less 和 .css
    gulp.src(['./src/css/*.less', './src/css/*.css'])
        // 将less语法转换为css语法
        .pipe(less())
        // 压缩css代码
        .pipe(csso())
        // 输出文件路径
        .pipe(gulp.dest('./dist/css'))
    callback();
})

// 执行任务
gulp cssmin

5、其他

copy任务(复制)

// 建立任务:复制
gulp.task('copy', callback => {
    // 获取文件images
    gulp.src('./src/images/*')
        // 输出文件路径
        .pipe(gulp.dest('./dist/images'))
    // 获取文件images
    gulp.src('./src/js/*')
        // 输出文件路径
        .pipe(gulp.dest('./dist/js'))
    callback();
})

// 执行任务
gulp copy

serise方法(执行多个任务)

// 使用serise方法
gulp.task('default', gulp.series('first', 'htmlmin', 'cssmin', 'copy'))

// 执行任务
gulp default
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值