VSCode Emmet 标识无法正确处理 Svelte 文件

Vla*_*ski 6 html emmet visual-studio-code svelte

我试图了解如何使 Emmet 正常处理.svelte文件。
当我使用 PHP 文件或 HTML 文件时,不会遇到此问题。

当我使用简单的 Emment 缩写(例如 )时,div输入后的输出对于两种语言都是相同的 ( <div>|</div>),光标位于块的中间。

使用 HTML 文件可以正常工作;所以按回车后,该块将被格式化(|代表光标):

<div>
    |
</div>
Run Code Online (Sandbox Code Playgroud)

虽然使用.svelte这个不起作用:

<div>
|</div>
Run Code Online (Sandbox Code Playgroud)

即使在扩展中,我如何告诉 Emmet 缩进代码.svelte?我尝试过在 中使用它settings.json,但不起作用:

"emmet.includeLanguages": {
    "svelte": "html"
}
Run Code Online (Sandbox Code Playgroud)

小智 13

这实际上取决于您希望 emmet 在 Svelte 中为您做什么。如果您只是寻找 html 标记快捷方式,这将起作用:

"emmet.includeLanguages": {
        "svelte": "html",
        
    }
}
Run Code Online (Sandbox Code Playgroud)

这将为您提供您习惯在 HTML 文件中使用的 html 标准 emmet。它也不会干扰其他扩展程序读取文件的方式。

我必须做更多的修改才能让它做更多的事情。但是,如果您正在寻找 Svelte 特定功能,请查看 Svelte for VS Code 扩展。该扩展将具有类似于 Svelte 特定代码块的 emmet 的功能列表,范围仅限于可以使用它们的地方。例如,脚本标签之间将为您提供 Svelte 特定功能 (JS)。在您要放置 HTML 的部分中,您将获得其他块,包括条件、动画等。