VSCode代码自动补全需正确配置语言服务器、项目配置文件及设置。Python须安装ms-python.python扩展并启用Pylance;JS/TS项目需jsconfig.json或tsconfig.json;补全依赖触发时机、路径别名声明及合理设置如snippetsPreventQuickSuggestions。

装对扩展:别只装“Python”,要装 ms-python.python
很多人搜“Python 补全”后随手装了名字带 Python 的扩展,结果 import 后没提示、点 . 没方法列表——大概率装错了扩展。
官方 Python 扩展是 ms-python.python(发布者 Microsoft),它内置 Pylance(默认启用),提供基于类型提示的智能补全。其他同名扩展(如 tht13.python)已停更多年,不支持 LSP。
- 卸载所有非
ms-python.python的 Python 相关扩展(特别是旧版python) - 确保
ms-python.python已启用,且设置中"python.languageServer": "Pylance"(默认值) - 重启 VSCode,打开一个
.py文件,输入os.看是否弹出完整方法列表
jsconfig.json 或 tsconfig.json 是 TypeScript/JS 补全的命门
没有配置文件,VSCode 默认把 JS 当纯文本处理,require('./utils') 后按 . 不会提示 utils.js 里的函数;TS 也会报一堆“无法找到模块”错误,补全直接失效。
在项目根目录手动创建 jsconfig.json(JS 项目)或 tsconfig.json(TS 项目),至少包含基础配置:
免费 盛世企业网站管理系统(SnSee)系统完全免费使用,无任何功能模块使用限制,在使用过程中如遇到相关问题可以去官方论坛参与讨论。开源 系统Web代码完全开源,在您使用过程中可以根据自已实际情况加以调整或修改,完全可以满足您的需求。强大且灵活 独创的多语言功能,可以直接在后台自由设定语言版本,其语言版本不限数量,可根据自已需要进行任意设置;系统各模块可在后台自由设置及开启;强大且适用的后台管理支
{
"compilerOptions": {
"module": "commonjs",
"target": "es2020",
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true
},
"include": ["**/*.js", "**/*.ts"],
"exclude": ["node_modules"]
}
- 删掉
jsconfig.json后补全立即退化?说明它确实在起作用 - 如果用 ESM(
type: "module"),需改"module": "nodenext"并加"moduleResolution": "nodenext" - 路径别名(如
@/components)需在compilerOptions.baseUrl和paths中显式声明,否则补全找不到
补全触发时机和快捷键比想象中更敏感
VSCode 默认不会“实时推”补全项,它依赖明确触发信号。很多用户以为“打字慢点就有提示”,其实关键在行为模式。
- 输入字母后等 200–300ms 无操作,会自动弹出(可调:
"editor.quickSuggestionsDelay": 250) - 按
Ctrl+Space(Windows/Linux)或Cmd+Space(macOS)强制唤出,哪怕光标在空格后 -
return或tab选中后,若补全项带括号(如函数),默认不自动加();要开启需设"editor.suggest.insertMode": "replace"并配合"editor.acceptSuggestionOnCommitCharacter": true - 在字符串内(如
require("│"))按Ctrl+Space,会触发路径补全;但若引号类型不匹配(混用'和"),路径补全直接静默失败
禁用 editor.suggest.snippetsPreventQuickSuggestions 才能补全代码片段
你定义了自定义代码片段(code-snippets),但在 .js 文件里打缩写却没反应?大概率被这个隐藏开关拦住了。
VSCode 默认在已有建议(如变量名、函数名)出现时,压制代码片段提示,避免干扰。但多数人写代码时就指望片段补全来写结构。
- 打开设置(
Ctrl+,),搜snippetsPreventQuickSuggestions - 取消勾选,或在
settings.json中设为false - 注意:这会让片段和语言建议混在一起,需靠上下文过滤(比如打
for会同时出现for循环片段和forEach方法)
Python / TS Server 加载中图标,再打开命令面板(Ctrl+Shift+P)运行 Developer: Toggle Developer Tools 查控制台报错。









