import.meta.globEager详解
Glob 模式规则
Glob 模式用于匹配文件路径,支持多种通配符和模式。以下是常见的 Glob 模式规则:
-
*
:- 匹配任意数量的字符(不包括路径分隔符
/
)。 - 示例:
*.vue
:匹配当前目录下所有.vue
文件。data/*.json
:匹配data
目录下所有.json
文件。
- 匹配任意数量的字符(不包括路径分隔符
-
**
:- 匹配任意数量的字符(包括路径分隔符
/
),通常用于匹配多级目录。 - 示例:
**/*.vue
:匹配当前目录及其所有子目录中的所有.vue
文件。src/**/*
:匹配src
目录及其所有子目录中的所有文件。
- 匹配任意数量的字符(包括路径分隔符
-
?
:- 匹配单个字符。
- 示例:
file?.txt
:匹配file1.txt
、file2.txt
等。data/file?.json
:匹配data/file1.json
、data/file2.json
等。
-
[abc]
:- 匹配方括号内的任意一个字符。
- 示例:
file[123].txt
:匹配file1.txt
、file2.txt
、file3.txt
。data/file[abc].json
:匹配data/filea.json
、data/fileb.json
、data/filec.json
。
-
{a,b,c}
:- 匹配花括号内的任意一个模式。
- 示例:
file{1,2,3}.txt
:匹配file1.txt
、file2.txt
、file3.txt
。data/{file1,file2}.json
:匹配data/file1.json
、data/file2.json
。
-
[a-z]
:- 匹配指定范围内的任意一个字符。
- 示例:
file[a-z].txt
:匹配filea.txt
、fileb.txt
等。data/file[0-9].json
:匹配data/file0.json
、data/file1.json
等。
-
[!abc]
:- 匹配不在方括号内的任意一个字符。
- 示例:
file[!123].txt
:匹配filea.txt
、fileb.txt
等,不匹配file1.txt
、file2.txt
、file3.txt
。data/file[!abc].json
:匹配data/file1.json
、data/file2.json
等,不匹配data/filea.json
、data/fileb.json
、data/filec.json
。
-
[a-z0-9]
:- 匹配指定范围内的任意一个字符。
- 示例:
file[a-z0-9].txt
:匹配filea.txt
、fileb.txt
、file1.txt
、file2.txt
等。data/file[0-9a-z].json
:匹配data/file0.json
、data/file1.json
、data/filea.json
、data/fileb.json
等。