补全功能生效需语言服务器加载、语言模式正确、项目有类型上下文三者同时满足;右下角若为plain text则补全无效,须手动切换语言模式,并确认ms-python.python+pylance或jsconfig.json/tsconfig.json配置到位。

editor.quickSuggestions 开启了也不代表补全能用——它只是“弹窗开关”,真正决定补全内容有没有、准不准的,是语言服务器有没有加载、文件是不是被识别为对应语言、项目有没有类型上下文。
为什么 os. 没提示?先看右下角语言模式
VSCode 不靠文件后缀判断语言,而是看右下角状态栏显示的内容。如果显示 Plain Text 或 Unknown,哪怕你在编辑 .py 文件,editor.quickSuggestions 设成 true 也毫无作用。
- 按
Ctrl+Shift+P→ 输入Change Language Mode→ 手动选Python/TypeScript/JavaScript -
.vue文件的<script></script>块默认可能是HTML,需点击右下角切换 - 写一行明显报错的代码测试:TypeScript 中输
const a: number = 'x';,没红色波浪线?说明 TS Server 没接管
Python 补全空白?大概率 Pylance 没跑起来
装了十几个“Python”扩展?真正起作用的只有 ms-python.python(微软官方),且必须启用其内置的 Pylance 语言服务器。旧版 tht13.python 或设成 Jedi 都会导致 import requests 后 requests. 只列出 __name__ 这类基础属性。
- 卸载所有非
ms-python.python的 Python 扩展 - 检查设置中
python.languageServer的值是否为"Pylance" - 按
Ctrl+Shift+P→Python: Select Interpreter,选一个真实存在的虚拟环境路径(如venv/bin/python) - 重启 VSCode,打开
.py文件输pathlib.Path().,看是否列出完整方法
JS/TS 补全跨不了文件?缺 jsconfig.json 或 tsconfig.json
没有这个配置文件,VSCode 就把整个项目当单个 JS 文件处理:import utils from './utils' 后 utils. 不出函数、@/components 别名不解析、第三方库无参数提示——不是插件问题,是项目“没身份”。
- 在项目根目录新建
jsconfig.json(JS 项目)或tsconfig.json(TS 项目) - 最简内容至少含:
{"compilerOptions": {"module": "nodenext", "target": "es2020", "allowJs": true, "checkJs": true, "moduleResolution": "nodenext"}} - 用了路径别名(如
@/utils)?必须加baseUrl和paths字段,例如:"@/*": ["src/*"] - 改完立刻执行
Ctrl+Shift+P→TypeScript: Restart TS server
editor.suggestOnTriggerCharacters 关了,. 就不会自动拉框
这个设置控制是否在输入 .、:、(、[ 等符号后自动触发建议。很多人只调了 editor.quickSuggestions,却漏掉它,结果 console. 死活不弹窗。
- 确保
editor.suggestOnTriggerCharacters设为true -
editor.quickSuggestions必须分上下文配,字符串里要补全路径就得开strings: true - 手动唤出建议框:光标停在该位置,按
Ctrl+Space,这是快速验证补全引擎是否就绪的最稳方式
axios.get 的参数都看不到。











