gulp入门详解之基本操作

2024-09-01 19:48

本文主要是介绍gulp入门详解之基本操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章结构


本文分为两部分:

  1. gulp 入门
  2. gulp 常用插件

gulp入门


简单介绍

首先来简单看一个gulp的工作流程
工作流的目的是:将less转换成为一个对应的css文件。

这里写图片描述
对应项目的下载地址:点击下载

运行环境
  1. node (本文的版本是v6.9.5)
  2. 包管理:npm(或者cnpm) 不了解的同学可以参考一下:链接内容
安装gulp环境
npm install gulp -g 

全局安装gulp,安装完成之后,可以通过 gulp -v 指令查看当前版本(v3.9.1)

开发流程
  1. 创建 package.json
  2. 创建并编写 gulpfile.js
  3. 命令行执行gulp

创建 package.json
通过我们之前配置好的npm,我们执行npm install来创建一个package.json文件。文件格式如下:

{"name": "gulp", // 包名称"version": "1.0.0", // 版本号"description": "", // 文件描述"main": "gulpfile.js", // 入口文件"dependencies": { // !!! 文件的依赖,当前为空},"devDependencies": {}, // 开发版本依赖"scripts": { // "test": "echo \"Error: no test specified\" && exit 1"},"author": "", // "license": "ISC" // 
}

我们可以看到,当前项目的依赖包(dependencies)列表为空。
本例我们需要做一个less=>css的转换,因此需要使用gulp以及gulp-less这两个插件包。
在命令行中,执行npm install gulp-less,我们再去看看dependencies依赖项目中会多了一个新包。

"dependencies": {"gulp": "^3.9.1"},

创建并编写 gulpfile.js

新建一个gulpfile文件,作为自动化项目构建任务。

./src/index.less

@color: #4D926F;#header {color: @color;
}
h2 {color: @color;
}

./gulpfile.js

let gulp = require('gulp')
let less = require('gulp-less')// 自定义任务
gulp.task('testless',function(){gulp.src('src/index.less') // 匹配特定文件// gulp.src('src/*.less') //  匹配固定目录下.less文件// gulp.src('./src/**/*.less') // 匹配固定目录下,所有子文件夹下的.less文件// gulp.src('./src/**/{index,other.index}.less') // 匹配固定目录下,特定文件名的.less.pipe(less()).pipe(gulp.dest('src/css'))
})
// 执行任务
gulp.task('default',['testless'])

命令行执行gulp

在命令行中执行gulpgulp-less这两种指令。
最后可以看到,新增加了./src/css/文件夹
这里写图片描述

这篇关于gulp入门详解之基本操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1127883

相关文章

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu

一文详解如何在Python中使用Requests库

《一文详解如何在Python中使用Requests库》:本文主要介绍如何在Python中使用Requests库的相关资料,Requests库是Python中常用的第三方库,用于简化HTTP请求的发... 目录前言1. 安装Requests库2. 发起GET请求3. 发送带有查询参数的GET请求4. 发起PO

Python进行PDF文件拆分的示例详解

《Python进行PDF文件拆分的示例详解》在日常生活中,我们常常会遇到大型的PDF文件,难以发送,将PDF拆分成多个小文件是一个实用的解决方案,下面我们就来看看如何使用Python实现PDF文件拆分... 目录使用工具将PDF按页数拆分将PDF的每一页拆分为单独的文件将PDF按指定页数拆分根据页码范围拆分

Java中的Cursor使用详解

《Java中的Cursor使用详解》本文介绍了Java中的Cursor接口及其在大数据集处理中的优势,包括逐行读取、分页处理、流控制、动态改变查询、并发控制和减少网络流量等,感兴趣的朋友一起看看吧... 最近看代码,有一段代码涉及到Cursor,感觉写法挺有意思的。注意是Cursor,而不是Consumer

SpringBoot项目注入 traceId 追踪整个请求的日志链路(过程详解)

《SpringBoot项目注入traceId追踪整个请求的日志链路(过程详解)》本文介绍了如何在单体SpringBoot项目中通过手动实现过滤器或拦截器来注入traceId,以追踪整个请求的日志链... SpringBoot项目注入 traceId 来追踪整个请求的日志链路,有了 traceId, 我们在排

HTML5中下拉框<select>标签的属性和样式详解

《HTML5中下拉框<select>标签的属性和样式详解》在HTML5中,下拉框(select标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中选择值的方式,本文将深入探讨select标签的... 在html5中,下拉框(<select>标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中

Python中多线程和多进程的基本用法详解

《Python中多线程和多进程的基本用法详解》这篇文章介绍了Python中多线程和多进程的相关知识,包括并发编程的优势,多线程和多进程的概念、适用场景、示例代码,线程池和进程池的使用,以及如何选择合适... 目录引言一、并发编程的主要优势二、python的多线程(Threading)1. 什么是多线程?2.

Java 8 Stream filter流式过滤器详解

《Java8Streamfilter流式过滤器详解》本文介绍了Java8的StreamAPI中的filter方法,展示了如何使用lambda表达式根据条件过滤流式数据,通过实际代码示例,展示了f... 目录引言 一.Java 8 Stream 的过滤器(filter)二.Java 8 的 filter、fi

Rust中的BoxT之堆上的数据与递归类型详解

《Rust中的BoxT之堆上的数据与递归类型详解》本文介绍了Rust中的BoxT类型,包括其在堆与栈之间的内存分配,性能优势,以及如何利用BoxT来实现递归类型和处理大小未知类型,通过BoxT,Rus... 目录1. Box<T> 的基础知识1.1 堆与栈的分工1.2 性能优势2.1 递归类型的问题2.2

springboot的调度服务与异步服务使用详解

《springboot的调度服务与异步服务使用详解》本文主要介绍了Java的ScheduledExecutorService接口和SpringBoot中如何使用调度线程池,包括核心参数、创建方式、自定... 目录1.调度服务1.1.JDK之ScheduledExecutorService1.2.spring