悬停预览不显示参数说明是因lsp未解析语义信息,需确保配置文件存在、注释格式正确、语言服务启用且无ai插件干扰,修改后需保存并等待lsp初始化完成。

不能直接“自定义方法悬停预览”的内容,但能精准控制它显示什么——关键在注释格式、语言服务状态和插件干扰排查,不是改设置就能解决。
为什么悬停只显示 function add() 而不是参数说明
这不是 hover 功能被关了,而是语言服务器(LSP)压根没解析出语义信息。常见断点:
- TS/JS 文件缺失
jsconfig.json或tsconfig.json(哪怕空文件也要有) - Python 文件右下角语言模式显示为
Plain Text,Pylance 完全不加载 - JSDoc 注释没紧贴函数定义:中间隔了空行,或用了
//单行注释而非/** */ - Python 的 docstring 没用 Pylance 认可的风格,比如漏掉
Args:或Returns:字段
让 JSDoc / docstring 真正生效的实操条件
光写了注释不等于会被读取,必须同时满足以下条件:
- JavaScript/TypeScript:使用标准
/** */块注释,且必须紧挨着函数声明上方,不能有空行 - Python:安装并启用
Pylance(不是官方 Python 扩展),禁用Microsoft Python旧版语言服务器 - docstring 必须是 Google 或 NumPy 风格,例如:
"""Args:x (int): The first number.""",纯自由文本无效 - 修改注释后必须 保存文件,VSCode 不会实时监听未保存变更
MDN 链接遮盖自己写的文档?别关 editor.hover.enabled
关掉这个设置会同时干掉变量值预览、类型提示等核心功能。精准压制 Web API 提示只需两步:
- 设置中搜索
html.suggest.html5,设为false - 再搜索
css.mdnsuggest,同样设为false - 执行
Developer: Reload Window(不是关闭重开)
改完后,在 document.getElementById 上悬停不再跳 MDN,但你写的 @param 和返回类型仍清晰可见。
AI 插件正在悄悄劫持你的 hover 提示
GitHub Copilot、Sesame AI 等插件常静默覆盖原生 hover 行为,且不报错、不提示。如果你确认注释和配置都对,但悬停内容始终异常:
- 临时禁用所有 AI 类扩展
- 重启窗口后测试 hover 是否恢复正常
- 若恢复,说明是插件冲突,而非代码或配置问题
最易被忽略的一点:hover 内容不会热更新——哪怕你改完 JSDoc 并保存,如果语言服务器还在初始化(状态栏图标仍在旋转),提示依然不会变。等几秒再试,别急着怀疑配置。











