You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Prettier会在React代码中添加奇怪的{" "}字符串?如何解决?

React项目Prettier自动添加{" "}的解决方案

问题原因

Prettier默认开启JSX空格保留逻辑,当你代码中的标签与文本之间、行尾存在空格,且Prettier格式化时对代码做了换行处理,为了避免渲染时空格丢失,就会自动插入{" "}来显式标记空格。

解决方法

方案1:修改Prettier全局配置(推荐)

在项目根目录的.prettierrc、.prettierrc.json或prettier.config.js配置文件中,添加以下配置项:

{
  "htmlWhitespaceSensitivity": "ignore"
}

该配置会让Prettier忽略JSX中的空格敏感度,不会自动为了保留空格生成{" "}。如果你用VS Code的Prettier插件,也可以在编辑器的settings.json中添加相同配置,全局生效。

方案2:调整代码写法

如果不想修改全局配置,可以手动删掉代码中不必要的空格,比如<li>和<span>之间的多余空格、行尾空格,格式化后就不会生成额外的{" "}。调整后的示例代码如下:

<ul>
  <li><span>npm start</span>: to start the project</li>
  <li><span>npm build</span>: to build the project</li>
</ul>

注意事项

将htmlWhitespaceSensitivity设为ignore后,如果你确实需要相邻标签之间保留空格,需要手动添加{" "}显式声明,否则渲染时空格会被自动移除。

内容的提问来源于stack exchange,提问作者Sanan Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 05:57:03