node.js项目在vscode中启动慢的主因是vscode默认监听node_modules等海量文件、eslint未配置ignorepath导致全量校验、以及自动导入建议触发全项目ast解析;须在项目级.vscode/settings.json中配置files.watcherexclude排除node_modules/dist/build、设置eslint.options.ignorepath指向.eslintignore、禁用javascript.suggest.autoimports和typescript.suggest.autoimports。

为什么 Node.js 项目在 VSCode 里启动特别慢
不是 Node.js 本身慢,而是 VSCode 在加载项目时做了太多它不该做的事儿:监听 node_modules 里的上万个文件、为每个 .js 文件预热 TypeScript 语言服务、让 ESLint 和 Prettier 在保存时反复打架。这些动作全挤在启动阶段,CPU 占用飙到 90%,打字都卡顿。
必须改的 files.watcherExclude 配置
VSCode 默认用 chokidar 监听所有文件变更,node_modules 里几万个小文件一动,就生成几万个事件,直接拖垮渲染线程。这个配置不生效,其他优化全是白搭。
- 一定要写在项目根目录下的
.vscode/settings.json里,用户级设置无效 - 至少包含:
"**/node_modules/**": true、"**/dist/**": true、"**/build/**": true - 如果用了
yarn workspaces或pnpm,额外加:"**/node_modules/.pnpm/**": true - 改完后必须关闭并重新打开该工作区,否则监听器不会重载
eslint.options.ignorePath 不配会校验整个 node_modules
ESLint 默认扫描所有 JS 文件,包括 node_modules 下的依赖源码。没配 eslint.options.ignorePath,它就会在后台默默跑完整个依赖树,尤其在首次打开项目时触发,CPU 持续满载。
使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r
- 在
.vscode/settings.json中加:"eslint.options": { "ignorePath": ".eslintignore" } - 确保项目根目录有
.eslintignore,内容至少含:node_modules/、dist/、build/ - 别用
eslint.validate列出一堆文件类型——那是旧版配置,新版靠eslint.lintTask.problemMatcher自动识别,手动列反而引发重复校验
禁用自动导入建议能省掉一次完整 AST 解析
VSCode 的 javascript.suggest.autoImports 和 typescript.suggest.autoImports 会在你敲代码时触发全项目符号分析,大型 Node.js 项目(比如含 webpack、babel 源码)解析一次就要 800ms+,且阻塞 UI 线程。
- 关掉它:
"javascript.suggest.autoImports": false、"typescript.suggest.autoImports": false - 需要导入时,用
Ctrl+Space手动触发建议,只分析当前文件上下文,快得多 - 这个开关对
require()无影响,只影响import补全;Node.js 项目若用 CommonJS,其实根本用不到它
真正卡住启动的,往往不是某个大功能,而是几个看似无害的默认行为叠加:监听所有目录 + 校验所有 JS + 自动解析全部模块。每项单独看开销不大,合起来就是“启动三秒后才出现编辑器窗口”。调优的关键是切断它们之间的连锁触发,而不是指望某一个开关立竿见影。










