Path Intellisense 默认不补全 node_modules 等目录是性能保护机制;补全失效主因是语言模式错误、autoGuess 干扰或 mappings 路径配置错误;./ 无响应因仅在字符串字面量内且 editor.quickSuggestions.strings 为 true 时触发;@ 别名需手动配置 mappings;monorepo 需启用 includePackageJson 并确保各 package.json 含 main/types 字段。

Path Intellisense 插件默认不补全 node_modules、dist、build 目录,不是失效,是性能保护;补全不准或不出现,90% 是语言模式错、autoGuess 干扰、或映射路径写错。
为什么 import 里敲 "./" 没反应?
它只在字符串字面量内部触发,且依赖当前文件的语言模式和编辑器设置:
- 确认右下角状态栏显示的是
JavaScript、TypeScript、vue等有效语言,不是Plain Text或未识别类型 -
editor.quickSuggestions必须对strings开启(设为true),否则引号内不弹建议 - 光标必须已进入引号内部,且至少输入一个字符(如
"./),空引号或引号外无效 - 别在注释、模板字符串拼接中期待补全——
import x from "./" + name这类运行时路径它完全不处理
如何让 @/components 这类别名生效?
Path Intellisense 不读取 tsconfig.json 的 paths,必须手动映射:
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
- 在
settings.json中配置path-intellisense.mappings,例如:"path-intellisense.mappings": {<br> "@": "${workspaceFolder}/src"<br>} - 如果项目有多个别名(如
@@指向src/utils),每个都要单独列出来 - 确保
tsconfig.json存在且路径正确,再配path-intellisense.tsconfig指向它(非必需,但有助于类型感知联动) - 别用
${workspaceRoot}—— VSCode 1.85+ 已弃用,改用${workspaceFolder},否则映射静默失效
monorepo 里路径总跳到 workspace 根,怎么 fix?
插件默认把 src 当根,但在 lerna/pnpm/turborepo 下会误判。关键不是删插件,而是告诉它“包在哪”:
- 在项目根目录的
.vscode/settings.json中启用path-intellisense.includePackageJson(设为true) - 加
path-intellisense.excludedItems过滤掉干扰项:"**/node_modules/**", "**/dist/**"
- 每个 package 的
package.json必须含main或types字段(哪怕只是"main": "index.js"),插件靠这个识别包边界 - 避免在
import中用../回退到 workspace 根——此时补全基于当前文件位置,不是package.json所在目录
补全出来的路径带多余 ../ 或缺 ./?
这是插件根据文件层级自动推导的,不是 bug,但容易在 alias 或自定义 resolver 场景下出错:
- 先禁用
JavaScript and TypeScript Nightly扩展——它自带路径逻辑,和 Path Intellisense 冲突 - 在
settings.json中强制风格:"path-intellisense.forceRelativePaths": true,<br>"path-intellisense.autoSlashAfterDirectory": true
- 关掉
path-intellisense.autoGuess(设为false),改用mappings显式控制起点 - Windows 用户不用手动改反斜杠——插件输出统一用
/,但能正确解析系统路径,硬改反而破坏兼容性
最常被忽略的一点:补全行为高度依赖当前文件是否在正确的工作区(File > Open Folder)下打开,以及是否有其他路径类插件(如 Auto Import)劫持了触发链。遇到问题,优先检查这三项,比反复重装插件快得多。

















