Reactjs tsx文件中的单引号,带prettier

Reactjs tsx文件中的单引号,带prettier,reactjs,typescript,prettier,Reactjs,Typescript,Prettier,在2-3周的时间里,虽然我没有在prettier文件中更改任何内容,但VSC开始将单引号更改为双引号,而它始终是单引号。我尝试了很多选择,但它一直在改变。这是我的请柬 { "trailingComma": "es5", "printWidth": 200, "semi": true, "singleQuote": true, "jsxSingleQuote": true, "tabWidth": 2, "quoteProps": "as-needed" } 编辑:我

在2-3周的时间里,虽然我没有在prettier文件中更改任何内容,但VSC开始将单引号更改为双引号,而它始终是单引号。我尝试了很多选择,但它一直在改变。这是我的请柬

{
  "trailingComma": "es5",
  "printWidth": 200,
  "semi": true,
  "singleQuote": true,
  "jsxSingleQuote": true,
  "tabWidth": 2,
  "quoteProps": "as-needed"
}

编辑:我认为,这是一个.tsx文件的问题,因为prettier只有.jsx文件的选项,但仍然没有找到解决方案。

在您的用户设置中,确保您有以下行:

"prettier.singleQuote": true
您可以通过windows上的
CTRL+,
或mac上的
CMD+,
访问用户设置


如果您使用的是设置GUI,只需搜索
single quote
,然后选中/取消选中
Prettier:Jsx single quote
Prettier:single quote
几天来我都有同样的问题。我检查了所有的设置,它们看起来都很好


目前唯一有帮助的是降级到Prettier的前一个版本,在我的例子中是2.3.0版(我没有检查此版本和最新版本之间的所有版本,但很少有版本有相同的问题)

在根文件夹上创建一个
.prettierrc
文件并添加:

{
  "singleQuote": true
}

.prettierrc
中,添加:

{
  "singleQuote": true,
  "jsxSingleQuote": true
}

这不是一个真正的解决办法。一开始我使用的是prettier,但发现它在VSCode方面有很多怪癖。我切换到了eslint,它工作得更好。我的项目中有tslint(因为它是用typescript编写的),但是当我想根据tslint config进行格式化时,它并没有遵循这些规则。我想这是你的问题。您有多个工具尝试应用规则。我想你应该去掉其中一个,更漂亮一点。然后尝试正确配置其余的。但是tslint只会在terminal中显示错误,只是在更漂亮的格式文件中显示错误,目前在组件文件(.tsx)中引用存在问题。我可以看到您有“jsxSingleQuote”:true。只要你使用最新的漂亮衣服,这个问题就会解决。我也有同样的问题,但是在添加了我的jsx文件中的所有双引号都变成了双单引号之后,我已经按照你提到的那样设置了所有双引号,但是仍然在我的.tsx文件中将其更改为双引号。你是指Prettier的版本吗?是的,Prettier的版本