学习Gulp过程中遇到的一些单词含义
注:以下有的单词的含义不仅仅在gulp里面是一样的,在其他某些语言里面也是一样
nodejs Doc:https://nodejs.org/api/stream.html
gulp Api:http://www.gulpjs.com.cn/docs/api/
插件网站:
https://www.npmjs.com/browse/keyword/gulpplugin
http://gulpjs.com/plugins/
gulp Api列表
- gulp.src(globs[, options])
- gulp.dest(path[, options])
- gulp.task(name[, deps], fn)
- gulp.watch(glob [, opts], tasks) 或 gulp.watch(glob [, opts, cb])
注: 1、2来自Vinyl,3来自Orchestrator
src
source
的缩写,表示源操作数,源文件
dest
destination
的缩写,表示目标操作数,目标文件
globs
golb
的复数,glob
是global
的缩写,作用就是匹配文件
例子: *.txt
是匹配所有以text为扩展名的文件
什么是glob?
在编程设计中,glob
是一种模式,它使用通配符来指定文件名。例如:.java
就是一个简单的glob
,
它指定了所有扩展名为java
的文件。glob
模式中广泛使用了两个通配符 *
和 ?
。其中
星号表示任意的字符或字符组成字符串
,而问号则表示任意单个字符
。
glob
模式源于Unix操作系统
,Unix
提供了一个global命令
,它可以缩写为glob
。glob
模式与
正则表达式 类似 ,但它的功能有限。
vinyl-fs
Vinyl是什么?
Vinyl 是一个非常简单的描述一个为文件的元数据对象
Vinyl对象主要有两个属性:path
和 contents
Vinyl Adapter是什么?
虽然Vinyl提供了一个简洁的方式来描述一个文件,现在我们需要一个方法来访问这些文件。
每个文件源需要我所说的Vinyl Adapter来匹配到对应文件使用,一个简单的Vinyl Adapter
暴露了src(globs)
和dest(folder)
的方法。
每个文件返回一个流。源流提供一个Vinyl 对象,目标流使用Vinyl对象。
Vinyl adapters
可以公开可能是特定于它们的输入/输出介质的额外方法,比如vinyl-fs
提供的symlink
方法。
demo
var map = require('map-stream');
var vfs = require('vinyl-fs');
var log = function(file, cb) {
console.log(file.path);
cb(null, file);
};
vfs.src(['./js/**/*.js', '!./js/vendor/*.js'])
.pipe(map(log))
.pipe(vfs.dest('./output'));
cb
cb
是callback
的缩写,回调函数
steam
表示文件流,可以想象成水流。
pipe
表示管道,即可以把文件流传到另一个函数
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!