阻止 Prettier 格式化程序将每个 HTML 标记放在 React JSX 文件中自己的行上?
Stop Prettier formatter from putting each HTML tag on its own line in React JSX files?
当我使用 prettier 格式化 HTML 文件时,它看起来像这样:
<nav>
<ul>
<li><a href="#" title="Home">Home</a></li>
<li><a href="#" title="About">About</a></li>
<li><a href="#" title="Sign Up">Sign Up</a></li>
<li><a href="#" title="Contact">Contact</a></li>
<li><a href="#" title="Careers">Careers</a></li>
</ul>
</nav>
但是当我将相同的标签放入 JSX 文件时,它会像这样重新格式化:
import React from "react";
const Demo = () => {
return (
<nav>
<ul>
<li>
<a title="Home">Home</a>
</li>
<li>
<a title="About">About</a>
</li>
<li>
<a title="Sign Up">Sign Up</a>
</li>
<li>
<a title="Contact">Contact</a>
</li>
<li>
<a title="Careers">Careers</a>
</li>
</ul>
</nav>
);
};
export default Demo;
我怎样才能阻止这种行为?即使 prettier.printWidth
的值很高,也会发生这种情况
你应该可以使用
来弯曲它
"bracketSameLine": true
在更漂亮的配置中
JSX Brackets
这也可能会有一些帮助
Prettier 有选项 printWidth
。您可以在 settings.json
中将其更改为较大的值。虽然有点费力,但确实有效。
"prettier.printWidth": 140
经过更多阅读,我得出结论,这是不可能的。 HTML 对空格敏感,因此它被保留,但由于 JSX 不是,它总是自动格式化并且 Prettier 没有选项将标签保持在同一行。
当我使用 prettier 格式化 HTML 文件时,它看起来像这样:
<nav>
<ul>
<li><a href="#" title="Home">Home</a></li>
<li><a href="#" title="About">About</a></li>
<li><a href="#" title="Sign Up">Sign Up</a></li>
<li><a href="#" title="Contact">Contact</a></li>
<li><a href="#" title="Careers">Careers</a></li>
</ul>
</nav>
但是当我将相同的标签放入 JSX 文件时,它会像这样重新格式化:
import React from "react";
const Demo = () => {
return (
<nav>
<ul>
<li>
<a title="Home">Home</a>
</li>
<li>
<a title="About">About</a>
</li>
<li>
<a title="Sign Up">Sign Up</a>
</li>
<li>
<a title="Contact">Contact</a>
</li>
<li>
<a title="Careers">Careers</a>
</li>
</ul>
</nav>
);
};
export default Demo;
我怎样才能阻止这种行为?即使 prettier.printWidth
你应该可以使用
来弯曲它"bracketSameLine": true
在更漂亮的配置中 JSX Brackets
这也可能会有一些帮助
Prettier 有选项 printWidth
。您可以在 settings.json
中将其更改为较大的值。虽然有点费力,但确实有效。
"prettier.printWidth": 140
经过更多阅读,我得出结论,这是不可能的。 HTML 对空格敏感,因此它被保留,但由于 JSX 不是,它总是自动格式化并且 Prettier 没有选项将标签保持在同一行。