配置 Prettier 以允许空格,但不包括锚标签内的空格。

6

我有两个场景无法解决 Prettier 配置设置:

目前,我将 "htmlWhitespaceSensitivity": "ignore" 设置为忽略空格敏感度以将此内容转换为:

<div
>stuff<
/div>

转化为:

<div>
stuff
</div>

但这会妨碍我对 <a> 标签分配适当的空白:

<a>hello</a>. 会变成带有不必要的空格:

<a>
   hello
</a>
.

有没有更好的Prettier配置来兼顾两全其美的效果?


1
你的第一个带有 div 的代码片段会抛出语法错误 SyntaxError: Unexpected closing tag "body".<a>hello</a> 保持不变,没有展开。你能提供一个最小可复现的示例输入和 .prettierrc.json 吗?你是在哪个环境中使用 prettier?是在 IDE、命令行等环境中? - the Hutt
这个链接可能对你有帮助:https://github.com/prettier/prettier/issues/5462 - Sunderam Dubey
2个回答

1

您可以在<a>标签之前添加此注释

<!-- prettier-ignore -->
<a>foo</a>


0

实际上并没有这样的设置。这更多是关于Prettier如何根据代码行的长度和内容格式化代码行。

 <a href="www.google.com" target="_blank">Google In New Tab</a>

如果您有以上的代码,当您保存它时,Prettier 将会格式化它如下:
 <a href="www.google.com" target="_blank">
   Google In New Tab
 </a>

如果锚点标签没有额外属性,Prettier将保持原样:

<a>Google In New Tab</a>

在启用Prettier之前和之后,这个保持不变

因此,最好是向锚点标签添加所需的属性,例如“target”和“href”。 Prettier应该可以为您正确格式化它。

您还可以查看Prettier设置中的打印宽度设置,使代码适合特定的行宽


谢谢Ruben。我刚刚注意到空格被包含在<a>中,这对用户来说看起来很糟糕(即<a>text </a><a>text</a>)。 - d-_-b

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接