#
src()创建一个流,用于从文件系统读取 Vinyl 对象。
注意:BOM(字节顺序标记)在 UTF-8 中没有用途,并且将从 src()
读取的 UTF-8 文件中删除,除非使用 removeBOM
选项禁用。
#
用法#
签名#
参数参数 | 类型 | 注释 |
---|---|---|
globs | 字符串 数组 | Globs 在文件系统上监视。 |
options | 对象 | 在下面的 选项 中详细说明。 |
#
返回一个流,可以在管道开始或中间使用,以根据给定的 glob 添加文件。
#
错误当 globs
参数只能匹配一个文件(例如 foo/bar.js
)且找不到匹配项时,抛出带有消息的错误,“未找到具有单数 glob 的文件”。要禁止此错误,请将 allowEmpty
选项设置为 true
。
当在 globs
中给出了无效的 glob 时,抛出带有消息的错误,“无效的 glob 参数”。
#
选项对于接受函数的选项,将使用每个 Vinyl 对象调用传递的函数,并且必须返回另一个列出类型的值。
名称 | 类型 | 默认值 | 注释 |
---|---|---|---|
缓冲区 | 布尔值 函数 | true | 当为 true 时,文件内容将缓冲到内存中。如果为 false,则 Vinyl 对象的 contents 属性将是一个暂停的流。可能无法缓冲大文件的内容。注意:插件可能未实现对流式内容的支持。 |
读取 | 布尔值 函数 | true | 如果为 false,则不会读取文件,并且它们的 Vinyl 对象将无法通过 .dest() 写入磁盘。 |
自 | 日期 时间戳 函数 | 设置后,仅为自指定时间以来修改的文件创建 Vinyl 对象。 | |
removeBOM | 布尔值 函数 | true | 当为 true 时,从 UTF-8 编码的文件中删除 BOM。如果为 false,则忽略 BOM。 |
sourcemaps | 布尔值 函数 | false | 如果为 true,则启用在创建的 Vinyl 对象上启用 sourcemaps 支持。加载内联 sourcemaps 并解析外部 sourcemap 链接。 |
resolveSymlinks | 布尔值 函数 | true | 当为 true 时,递归解析符号链接到其目标。如果为 false,则保留符号链接并将 Vinyl 对象的 symlink 属性设置为原始文件的路径。 |
cwd | 字符串 | process.cwd() | 将与任何相对路径组合以形成绝对路径的目录。对于绝对路径,将忽略此项。用于避免将 globs 与 path.join() 结合使用。此选项直接传递给 glob-stream。 |
base | 字符串 | 显式设置创建的 Vinyl 对象上的 base 属性。在 API 概念 中详细说明。此选项直接传递给 glob-stream。 | |
cwdbase | 布尔值 | false | 如果为真,cwd 和 base 选项应对齐。此选项直接传递给 glob-stream。 |
root | 字符串 | globs 相对于其解析的根路径。此选项直接传递给 glob-stream。 | |
allowEmpty | 布尔值 | false | 如果为假,则只能匹配一个文件(例如 foo/bar.js )的 globs 在找不到匹配项时会引发错误。如果为真,则抑制 glob 失败。此选项直接传递给 glob-stream。 |
uniqueBy | 字符串 函数 | 'path' | 通过比较字符串属性名称或函数的结果,从流中删除重复项。 注意:使用函数时,该函数会接收流式传输数据(包含 cwd 、base 、path 属性的对象)。 |
dot | 布尔值 | false | 如果为真,则针对点文件(如 .gitignore )比较 glob。此选项直接传递给 node-glob。 |
silent | 布尔值 | true | 如果为真,则抑制在 stderr 上打印的警告。注意:此选项直接传递给 node-glob,但默认为 true ,而不是 false 。 |
mark | 布尔值 | false | 如果为真,则会将 / 字符追加到目录匹配项。通常不需要,因为路径在管道中已标准化。此选项直接传递给 node-glob。 |
nosort | 布尔值 | false | 如果为真,则禁用对 glob 结果进行排序。 此选项直接传递给 node-glob。 |
stat | 布尔值 | false | 如果为真,则对所有结果调用 fs.stat() 。这会增加额外的开销,通常不应使用。此选项直接传递给 node-glob。 |
strict | 布尔值 | false | 如果为真,则在尝试读取目录时遇到意外问题时会引发错误。 此选项直接传递给 node-glob。 |
nounique | 布尔值 | false | 如果为假,则防止结果集中出现重复文件。 此选项直接传递给 node-glob。 |
debug | 布尔值 | false | 如果为真,则调试信息将记录到命令行。 此选项直接传递给 node-glob。 |
nobrace | 布尔值 | false | 如果为真,则避免扩展大括号集 - 例如 {a,b} 或 {1..3} 。此选项直接传递给 node-glob。 |
noglobstar | 布尔值 | false | 如果为真,则将双星 glob 字符视为单星 glob 字符。 此选项直接传递给 node-glob。 |
noext | 布尔值 | false | 如果为真,则避免匹配 extglob 模式 - 例如 +(ab) 。此选项直接传递给 node-glob。 |
nocase | 布尔值 | false | 如果为真,则执行不区分大小写的匹配。 注意:在不区分大小写的文件系统上,非魔术模式将默认匹配。 此选项直接传递给 node-glob。 |
matchBase | 布尔值 | false | 如果为真且 glob 不包含任何 / 字符,则遍历所有目录并匹配该 glob - 例如 *.js 将被视为等效于 **/*.js 。此选项直接传递给 node-glob。 |
nodir | 布尔值 | false | 如果为真,则仅匹配文件,不匹配目录。 注意:要仅匹配目录,请以 / 结尾。此选项直接传递给 node-glob。 |
ignore | 字符串 数组 | 从匹配项中排除的 glob。此选项与否定 globs 结合使用。注意:无论其他任何设置如何,这些 glob 始终与点文件匹配。 此选项直接传递给 node-glob。 | |
follow | 布尔值 | false | 如果为真,则在扩展 ** glob 时将遍历符号链接的目录。注意:这可能会导致循环链接出现问题。 此选项直接传递给 node-glob。 |
realpath | 布尔值 | false | 如果为真,则对所有结果调用 fs.realpath() 。这可能会导致出现悬空链接。此选项直接传递给 node-glob。 |
cache | 对象 | 先前生成的缓存对象 - 避免某些文件系统调用。 此选项直接传递给 node-glob。 | |
statCache | 对象 | 先前生成的fs.Stat 结果的缓存 - 避免某些文件系统调用。此选项直接传递给 node-glob。 | |
symlinks | 对象 | 先前生成的符号链接的缓存 - 避免某些文件系统调用。 此选项直接传递给 node-glob。 | |
nocomment | 布尔值 | false | 为 false 时,将 glob 开头的# 字符视为注释。此选项直接传递给 node-glob。 |
#
SourcemapsSourcemap 支持直接内置到src()
和dest()
中,但默认情况下处于禁用状态。启用它以生成内联或外部 sourcemap。
内联 sourcemap
外部源映射