是,右下角语言模式必须为HTML,否则html.suggest.html5、emmet.triggerExpansionOnTab等均失效;新建文件默认Plain Text,需保存为.html并手动切换,.vue/.jsx等需额外配置files.associations或使用Volar等适配插件。

右下角语言模式是不是 HTML?
这是 90% 补全失效的起点。VSCode 不知道你在写 HTML,就不会加载 HTML 语言服务,html.suggest.html5、emmet.triggerExpansionOnTab 全部失效。
点击右下角状态栏显示的语言标识(比如 Plain Text、Vue 或 Unknown),手动选成 HTML;如果没这个选项,说明文件还没保存或后缀不对——先保存为 .html,再试。
- 新建未保存文件(如
Untitled-1)默认是Plain Text,不触发任何补全 -
.vue文件默认不是HTML模式,需额外配置files.associations -
.jsx或.tsx文件里写 HTML 标签,必须靠语言模式切换,不是靠文件内容识别
html.suggest.html5 和 emmet.triggerExpansionOnTab 开了没?
这两个开关控制“提示弹不弹”和“Tab 键管不管用”。它们默认在部分场景下是关闭的,不是 bug。
打开设置(Ctrl + ,),搜 html.suggest.html5,确保为 true;再搜 emmet.triggerExpansionOnTab,设为 true。也可以直接改 settings.json:
立即学习“前端免费学习笔记(深入)”;
"html.suggest.html5": true, "emmet.triggerExpansionOnTab": true
- 关掉
html.suggest.html5后,div、section、input的 type 枚举值都不会出现在补全列表里 -
emmet.triggerExpansionOnTab设为false时,Tab 只缩进,ul>li*3按 Tab 也不会展开 - 这些设置在 UI 界面改只影响当前工作区;要全局生效,得确认
settings.json里有且没被 workspace 配置覆盖
.vue 或 .jsx 文件里补全不工作?后缀和语言模式要对齐
Vue 单文件的 <template></template> 区域、React 的 JSX 写法,都依赖编辑器识别出“这里该用 HTML 补全逻辑”,而不是靠猜。
生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力: - 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面; - 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”; - 提及位于 `apps/console/src/featur
对于 .vue 文件,推荐两种方式之一:
- 在
settings.json加:"files.associations": { "*.vue": "html" },然后全窗口重启 VSCode - 如果用了 Volar(推荐),别硬切语言模式,改用:
"volar.html.suggest.html5": true和"volar.autoImportCompletion": true
对于 React 项目,把 Header.js 改成 Header.jsx,让 VSCode 自动识别为 JavaScript React 模式——否则 div + Tab 永远不会生成 <div></div>。
改完配置没反应?重启和缓存比点十次设置更有效
VSCode 的语言服务启动是懒加载的,很多配置(尤其是 files.associations 和 html.autoClosingTag)改完后必须全窗口重启才生效,仅“重载窗口”不够。
如果仍异常,试试命令面板(Ctrl + Shift + P)运行:
-
Developer: Restart Language Server(重启对应语言服务器) -
Developer: Toggle Developer Tools,看 Console 有没有Failed to load或ENOENT报错 - Windows 用户可任务管理器杀掉残留的
node.exe或code helper进程
最易被忽略的是:你以为改了设置,其实被 workspace 配置覆盖了;你以为插件装了,其实被 Volar 或 Prettier 静默禁用了原生补全逻辑。


















