输入div按Tab没反应,是因为Emmet仅在HTML等正确语言模式下生效且必须用Tab触发;需确认右下角显示HTML、emmet.triggerExpansionOnTab为true,并在.vue/.jsx中配置files.associations和emmet.syntaxProfiles。

输入 div 按 Tab 没反应?先确认 Emmet 是否真正启用
不是插件没装,而是 VS Code 默认只在正确语言模式下响应 Emmet 缩写,且必须用对触发方式。常见失效表现是敲完 div 直接按 Enter 或鼠标点别处,结果啥都没出来。
- 右下角状态栏必须显示
HTML;若显示Plain Text、JavaScript或Vue,点击它 → 选Configure File Association for '.html'→ 设为HTML - 检查
emmet.triggerExpansionOnTab是否为true(尤其注意工作区settings.json是否覆盖了用户设置) -
Tab是唯一默认触发键;Enter不会触发 Emmet,它只换行 - 验证是否正常:新建
test.html,输入!+Tab,能生成完整 HTML5 骨架就说明 Emmet 本身没问题
.vue 或 .jsx 文件里怎么让 HTML 标签也补全?
VS Code 不会自动把非 .html 文件当 HTML 处理,必须显式告诉它“这部分内容该用 HTML 规则解析”。光靠装 Emmet 插件没用,得配两层映射。
生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力: - 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面; - 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”; - 提及位于 `apps/console/src/featur
- 在
settings.json中加文件关联:"files.associations": { "*.vue": "html", "*.jsx": "javascriptreact" } - 再加 Emmet 语法映射:
"emmet.syntaxProfiles": { "vue-html": "html", "javascriptreact": "jsx" } - Vue 项目强烈建议换用
Volar插件,并开启volar.autoInsertEmmetSupport;否则emmet.includeLanguages很可能被忽略 - 注意:Volar 启用后,原生的
html.suggest.*设置基本失效,补全逻辑由 Volar 接管
为什么 <di> 输一半不提示 <code><div>?和 <code>html.suggest.html5 有关
这个设置不控制“能不能补全”,而是决定“补哪些标签”。关掉它,<he> 就不会提示 <code><header></header>,但 <di> 可能还能出 <code><div>——因为基础标签属于老标准,语义化标签才依赖这个开关。
<ul>
<li>确保 <code>"html.suggest.html5": true,否则 <nav></nav>、<section></section>、<main></main> 等语义化标签不会出现在补全列表中
input 的 type 枚举值(如 date、email)需要额外开启实验性配置:"html.suggest.experimental.customHtml5": true(仅部分 VS Code 版本支持)html.autoClosingTag 混淆:后者管的是输入 <div> 后自动补 <code>


















