学习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
表示管道,即可以把文件流传到另一个函数
学习Gulp过程中遇到的一些单词含义的更多相关文章
- 关于HTML中,绝对定位,相对定位的理解...(学习HTML过程中的小记录)
关于HTML中,绝对定位,相对定位的理解...(学习HTML过程中的小记录) 作者:王可利(Star·星星) HTML中 相对定位:position:relative; 绝对定位:position ...
- 利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录)
利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录) 作者:王可利(Star·星星) 总结: 今天学习的jQ类库的使用,代码重复的比较多需要完善.严格区分大小写,在 $(" ...
- html/css 盒子布局 Margin 、Padding 、border 以及 清除浮动的知识 (学习HTML过程中的小记录)
html/css 盒子布局 Margin .Padding .border 以及 清除浮动的知识 (学习HTML过程中的小记录) 作者:王可利(Star·星星) width 是"宽 ...
- 深度学习训练过程中的学习率衰减策略及pytorch实现
学习率是深度学习中的一个重要超参数,选择合适的学习率能够帮助模型更好地收敛. 本文主要介绍深度学习训练过程中的6种学习率衰减策略以及相应的Pytorch实现. 1. StepLR 按固定的训练epoc ...
- 各种报错各种坑 webpack让我在学习的过程中一度想要放弃
由于拓展部分不是必须的,只是可以增强用户体验,但是有些时候页面给分页预留的位置不够,这个时候我们就可以通过设置来除去这一部分 子分区由两种创建方法,一种是不定义每个子分区子分区的名字和路径由分区决定, ...
- 学习MySQL过程中的随笔二
MySQL深入学习: 视图 使用视图的目的:多次使用同一张临时表(或者已经存在的表) 视图只是一个虚拟表,其本质为[根据SQL语句获取动态的数据集,并为其命名],用户只需使用别名即可获得实时的 ...
- 学习django3过程中的坑
最近跟着Django by Example 2015学习,可老想用最新版的Django3.在学的过程中可踩了不少坑. 今天就又碰到一个: 在这本书中96页有这样的代码: url(r'^login/$' ...
- 学习Android过程中遇到的问题及解决方法——电话监听
也许有时你会有这样一个需求:通电话时有一个重要的事需要记下来或者和一个陌生人特别是大骗子通话时,这是就想如果能把通话录下来就方便多了.(这才是我写这个代码的目的!!!) 在此过程中,犯了一个很大的错误 ...
- 学习FPGA过程中的理论知识
学习FPGA,先要有数电知识,最好有点C语言,,学好硬件描述语言,verilog或者vhdl.在有这些基础上,做一些小的模块不断积累.这里不再赘述. 下面介绍一下关于FPGA学习过程中的一些理论知识. ...
随机推荐
- Parenthesis UVALive - 4882 删除不必要的括号序列,模拟题 + 数据
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...
- python_14(js)
第1章 图片方法 1.1 设置背景图:1.2 背景图问题:1.3 background-repeat; noa-repe 1.4 background-attachment: fixed1.5 bac ...
- SpringBoot实现登陆拦截
一.创建interceptor包,在interceptor中创建一个拦截器并实现HandlerInterceptor 代码: @Componentpublic class LoginHandlerIn ...
- leetcode134 Gas Station
思路: https://leetcode.com/problems/gas-station/discuss/269604/Java-Greedy-thought-process 关键是要想清楚如果从加 ...
- github入门之分支操作--5
1.显示分一览表 2.创建.切换分支 2.1.切换到feature-A分支并进行提交 2.1.1.执行下面的命令,创建名为feature-A的分支 实际上,执行以命令也能收到同样的效果,但是我习惯使用 ...
- (六)使用Docker镜像(下)
1. 创建镜像 创建镜像的方法有三种: 基于已有镜像的容器创建 基于本地模板导入 基于Dockerfile创建 1.1 基于已有镜像的容器创建 该方法主要是使用docker commit命令,其格式 ...
- 2890: C--去掉+86
2890: C--去掉+86 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 210 Solved: 91[Submit][Status][Web Bo ...
- CAD交互绘制圆形云线批注(网页版)
js中实现代码说明: 动态拖放时的绘制事件: function DoDynWorldDrawFun(dX,dY,pWorldDraw,pData) { //自定义实体的GUID标识符 var sGui ...
- 利用python实现整数转换为任意进制字符串
假设你想将一个整数转换为一个二进制和十六进制字符串.例如,将整数 10 转换为十进制字符串表示为 10 ,或将其字符串表示为二进制 1010 . 实现 以 2 到 16 之间的任何基数为参数: def ...
- VC-基础:隐藏不安全函数的warning-_CRT_SECURE_NO_WARNINGS
>tmp.cpp(): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strc ...