如何禁止Prettier格式化代码时自动补全关闭HTML标签?
首先你配置的"html.autoClosingTags": false是VS Code自带编辑器的输入时自动补全标签规则,只作用于你手动敲代码的场景,不会影响Prettier格式化代码的行为,所以不生效是正常的。
Prettier默认会在格式化HTML时自动修复缺失的闭合标签、修正非法的标签嵌套结构,这个属于它内置的HTML正确性校验修复逻辑,没有提供单独的开关可以关闭,可根据你的需求选以下两种方案处理:
- 方案1:把HTML文件的默认格式化工具切换为VS Code自带的HTML格式化器,关闭格式化时自动补全标签的规则,在VS Code的settings.json中添加如下配置即可:
"[html]": { "editor.defaultFormatter": "vscode.html-language-features" }, "html.format.autoClosingTags": false
- 方案2:如果需要继续使用Prettier格式化HTML,仅不想让它补全部分代码段的闭合标签,可以在对应代码段前后添加Prettier忽略注释:
<!-- prettier-ignore-start --> <body> <h1>home page</h1> <!-- prettier-ignore-end -->
被注释包裹的代码段不会被Prettier格式化,自然不会自动补全缺失的闭合标签。
内容的提问来源于stack exchange,提问作者Jorge
相关产品推荐
相关产品推荐

