在 WebStorm 中更改 JSX 代码样式

Change JSX code style in WebStorm

我在我的 React 项目中使用 airbnb ESLint 扩展,这迫使我格式化 empty/void 标签,中间有一个 space:<br />.

但是,WebStorm 自动格式化 (Prettier) 每次都会更改此设置。我在 WebStorm 代码样式设置中找不到 JSX (File > Settings > Code Style)。

有什么方法可以更改 WebStorm 的 JSX 格式设置吗? .editorconfig 文件有帮助吗?

您可以将文件“.prettierignore”添加到您的项目中。您可以设置忽略所有文件以禁用更漂亮。

但更好的方法是使用 Prettier 作为格式化代码的主要工具。在文件“.prettierrc.json”中,您可以设置自定义设置。

我找到了解决问题的方法。它实际上只是一个 HTML 格式化的东西,与 JSX 无关,这意味着 Webstorm 将使用 HTML 格式化规则来相应地设置 JSX 的样式。

Files > Editor > Code Style > HTML 在选项 Spaces 下,复选框 In empty tag 将设置 empty/void 标签的样式,就像 airbnb 扩展希望的那样。

对于进一步的样式规则,我将按照@Ales Dostál 的建议定义查看 prettierrc.json。

WebStorm 自己的 JSX 格式遵循 HTML 代码样式首选项 - 特别是,要将您的自闭合 JSX 标签格式化为 <br />,您必须启用 In empty 标签 设置中 |编辑|代码风格 | HTML |其他空间.

Prettier 不使用 WebStorm 代码首选项...据我所知,它曾经在格式化的空标签中插入 space (https://github.com/prettier/prettier/issues/1985)