VSCode无法自动导入主因是语言服务器未加载或配置错误:状态栏显示Plain Text或JavaScript (Deprecated)说明语言模式错误;需确认tsconfig.json/jsconfig.json存在、autoImports设为true、路径别名在tsconfig中声明并重启TS服务器。

VSCode无法自动导入,90%的情况不是功能坏了,而是语言服务器压根没加载成功或配置没对上——改设置、装插件之前,先确认服务是否在跑。
状态栏右下角显示 Plain Text 或 JavaScript (Deprecated)
这说明当前文件没进入正确的语言模式,TS/JS 语言服务根本没启动,所有自动导入相关设置都无效。
- 点右下角语言标识(如
Plain Text),选TypeScript或TypeScript React(Vue 项目选Volar) - 按
Ctrl+Shift+P运行TypeScript: Select TypeScript Version,选Use Workspace Version - 打开开发者工具(
Developer: Toggle Developer Tools),Console 里输require('typescript'),报错就说明本地 TS 包缺失或路径异常
按 Ctrl+. 没出现 “Add import” 选项
这是最可靠的验证方式:手动触发 Quick Fix 才能暴露真实问题。如果菜单里只有格式化、重命名等选项,说明模块解析失败。
- 确保项目根目录有
tsconfig.json(TS)或jsconfig.json(JS),哪怕内容只是{"compilerOptions": {}} -
tsconfig.json中必须含"moduleResolution": "node"或"bundler",不能是"classic" - 检查
settings.json里typescript.suggest.autoImports和javascript.suggest.autoImports都是布尔值true,不是字符串"true"
路径别名(如 @/components)不提示、跳转失败
VSCode 完全不读 Webpack/Vite 的 resolve.alias,只认 tsconfig.json 里的 baseUrl 和 paths,配错或漏重启服务都会失效。
-
baseUrl必须是相对tsconfig.json的路径,比如"./"或"./src",不能写成"src" -
paths要严格匹配,例如"@/*": ["src/*"],注意末尾的/*不能少 - 改完
tsconfig.json后必须运行TypeScript: Restart TS server,仅重开文件无效 - 确认当前文件在
include范围内,比如"include": ["src/**/*"]漏掉tests/目录,里面就无法解析别名
Python 自动导入不弹、第三方包找不到
Pylance 的索引深度默认很浅,像 sqlalchemy.orm 或 django.contrib.auth 这类嵌套模块,不显式调大深度就根本不会被建议。
- 确保
python.languageServer设为"Pylance"(带双引号),禁用 Jedi - 开启
python.analysis.indexing,并配python.analysis.packageIndexDepths,例如:{ "name": "django", "depth": 5, "includeAllSymbols": true } - 本地模块(如
utils.py)必须放在工作区根目录下,且被 Pylance 成功索引;子文件夹未打开时,再怎么配都无效
最容易被忽略的是多根工作区场景:只有「活动文件夹」下的 tsconfig.json 或 pyproject.toml 生效,其他子项目得单独配或用 extends 继承。服务没加载、配置不在生效路径、别名没声明——这三者之一出问题,自动导入就注定静默。


















