在前端开发中,我们通常需要在构建过程中排除一些不必要的文件或文件夹,以避免将它们打包到最终的构建结果中。为了处理这个问题,我们可以使用一个叫做咕噜(MINIMATCH / GLOB)的工具。
什么是咕噜(MINIMATCH / GLOB)
咕噜(MINIMATCH / GLOB)是一个用于匹配文件路径的模式匹配库。它基于 shell 的 glob 语法,并支持一些扩展功能。我们可以使用咕噜来查找文件和文件夹,或者在一个文件列表中排除某些文件或文件夹。
如何使用咕噜(MINIMATCH / GLOB)排除文件夹
下面是一个使用咕噜(MINIMATCH / GLOB)排除文件夹的示例代码:
-- -------------------- ---- ------- ----- ---- - ---------------- -- --------- ----- ----- - ----------------------- - ------ ---- --- -- -- ------------ -- ----- ------------ - --------------------------------------- - ------ ---- --- ----- ------ - ----------------- -- ------------------------------ --------------------
以上代码使用了 glob
模块的 sync()
方法来获取 ./src
目录下的所有文件,然后使用 glob.sync()
方法和 { nodir: true }
选项来获取 ./src/node_modules
目录下的所有文件,并将它们保存到一个数组中。最后,我们通过 Array.filter()
方法来排除在 excludeFiles
中出现的文件。
常用的咕噜(MINIMATCH / GLOB)语法
*
:匹配任意数量的字符,但不包括路径分隔符/
**
:匹配任意数量的字符,包括路径分隔符/
?
:匹配单个字符,但不包括路径分隔符/
[...]
:匹配方括号中的任意一个字符!(pattern)
:排除与模式匹配的文件或文件夹?(pattern)
:匹配零个或一个与模式匹配的文件或文件夹+(pattern)
:匹配一个或多个与模式匹配的文件或文件夹*(pattern)
:匹配零个或多个与模式匹配的文件或文件夹
总结
在前端开发中,我们经常需要在构建过程中排除一些不必要的文件或文件夹。咕噜(MINIMATCH / GLOB)是一个非常有用的工具,它可以帮助我们快速地找到或排除指定的文件。在我们掌握了咕噜(MINIMATCH / GLOB)的基本语法以及常用选项后,我们可以更加高效地完成项目开发和构建工作。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/12122