VSCode 如何通过 Ctrl+P 快速打开 node_modules 中的文件

309 天前
 zhennann

背景

咱们新建一个 NodeJS 项目,必然会安装许多依赖包,因此经常需要查阅某些依赖包的源码文件。但是,由于 node_modules 目录包含的文件太多,出于性能考虑,在 VSCode 中默认情况下是禁止搜索 node_modules 目录的。在这种情况下,我们将不得不依次展开 node_modules 的文件目录树,来查找我们所需要的文件。相信这种体验一定是非常低效、恼人的。那么,我们该如何定制 VSCode 的这种缺省行为呢?

目标

我们以 CabloyJS 项目为例。一个新建的 CabloyJS 项目包含大量核心模块,我们希望快速查看工作流模块a-flow的源码,可以这样操作:

  1. 使用快捷键Ctrl + P,打开Quick Open面板

  2. 输入a-flow/pa,即可快速定位到文件node_modules/egg-born-module-a-flow/package.json

VSCode 配置

为了达到以上目标,我们仅需要在settings.json文件中添加以下配置:

{
    "search.exclude": {
        "**/node_modules":false
    },
    "search.useIgnoreFiles":false
}
  1. **/node_modules设为false,从而禁用缺省行为,从而支持 node_modules 目录的检索

  2. 对于许多项目而言,将**/node_modules设为false就已经足够了。那么,为什么还需要将search.useIgnoreFiles设为false呢?这是因为有的项目包含.gitignore文件,而.gitignore文件中忽略了 node_modules 目录,这个机制仍然限制了 VSCode 对 node_modules 目录的检索。因此,我们需要配置该参数,从而忽略这种默认行为

结论

简而言之,将search.useIgnoreFiles设置为false才是这篇文章的题眼。因为,我是查阅了大量英文社区资源才得出了这个问题所在,也希望能节省大家的时间

1145 次点击
所在节点    Node.js
3 条回复
horizon
309 天前
这样太耗资源了
anzerwall
308 天前
非常消耗资源 大项目的 node_modules 很大的,需要打开的话 手动点开就行了
zhennann
308 天前
@anzerwall 请问手动点开如何操作?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/954603

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX