发布于2026-05-23 阅读(0)
扫一扫,手机访问

想让侧边栏清爽起来?直接配置 files.exclude 就行。这个设置能让匹配的路径从资源管理器(也就是左侧的文件树)里彻底消失——注意,不是折叠起来,也不是简单忽略,而是真正地“看不见”。
这里有个经典的认知误区:很多人以为“排除”是全局生效的。实际上,search.exclude 和 files.exclude 是两套完全独立的系统,数据根本不互通。
前者只负责控制 Ctrl+Shift+F 全局搜索的结果,对侧边栏的显示毫无影响。所以,如果你只改了 search.exclude,然后纳闷为什么 node_modules 还在左边晃悠,原因就在于此。
files.exclude。search.exclude 里。所有路径都相对于工作区的根目录,并且必须使用 glob 模式。这不是正则表达式,也不是简单的本地相对路径。常见的配置失效,十有八九是路径写错了:
"node_modules": true → 这只隐藏根目录下的 node_modules。像 packages/foo/node_modules 这种嵌套在子目录里的,完全不管用。"**/node_modules": true → 这才是正确写法。两个星号递归匹配任意层级的同名文件夹。"dist": true → 可能无效。它只匹配根目录的 dist,src/dist 或 build/dist 都不会被隐藏。"**/dist": true → 正确写法,覆盖所有位置的 dist 目录。"**/logs/**": true → 隐藏所有名为 logs 的目录及其内部的全部内容。"**/*": true 或 "**": true → 千万别这么试,除非你想让整个资源管理器变成一片空白。想“网开一面”?用 ! 来做负向排除就行。但这里的顺序非常关键:例外规则必须写在通用规则之后,否则会被提前过滤掉。
"!node_modules/@types": true, "node_modules": true → @types 仍然会被吃掉。"node_modules": true, "!node_modules/@types": true, "!node_modules/@types/**": true!**/node_modules/@types/**。老版本建议使用上面那种绝对路径模式。! 规则只对显式匹配的路径生效,它不会自动递归放行其子目录。所以,记得加上 /** 来确保子内容也被排除在外。配置的优先级是这样的:工作区设置(即项目内的 .vscode/settings.json)高于用户全局设置。在多根工作区(Multi-root Workspace)下,每个文件夹都可以有自己的 .vscode 配置,规则互不干扰。
.vscode/settings.json 中。这样既统一了团队成员的开发环境,又避免污染个人全局设置。files.exclude 的设置,主动去读取文件。这会导致你在插件的专属视图里,仍然能看到被隐藏的路径——别慌,这不是你的配置错了,只是插件的独立行为。最后,分享一个真正容易被忽略的细节:路径匹配是以斜杠为界的。"build/*" 不会匹配 build 这个文件夹本身,要匹配文件夹得写成 "build": true。反过来,通配符 ** 必须配合斜杠使用,"**dist" 是无效的,正确的写法是 "**/dist"。把握好这个分寸,你的文件树就能乖乖听话了。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8