Prettier不适用于在可视代码中将双引号更改为单引号

时间:2017-07-16 02:37:47

标签: visual-studio-code eslint prettier

我在可视代码中使用EsLint和Prettier。一切都运作良好,没有单引号和双引号。

这是我的.eslintrc文件: { "parser": "babel-eslint", "plugins": ["prettier"], "rules": { "prettier/prettier": [ "error", { "singleQuote": true } ] } } 当我使用ctr + shift + P并输入“format Document”时。双引号没有改为单引号。如果我使用自动修复,它会改变但是当我保存它时,单引号会变成双引号。

我该如何解决这个问题。

4 个答案:

答案 0 :(得分:0)

仅当您的字符串中包含'时,才会发生这种情况(“这是一件事情”)。 更漂亮有这个问题,显然没有解决方案。

我的解决方法是对此类字符串使用``(字符串模板语法),对所有其他字符串使用单引号。

`it's a thing`

您不必逃避这个问题。

答案 1 :(得分:0)

答案 2 :(得分:0)

由于您已经在漂亮的配置中设置了singleQuote: true,所以我怀疑您正在看到单引号转换为双引号,特别是在JSX标记内。这是因为Prettier对于JSX有单独的规则:

"jsxSingleQuote": true

否则,即使使用"singleQuote": true,Prettier仍将JSX中的单引号转换为双引号。

根据Prettier,JSX中的双引号是默认的,因为它是HTML的后代,在HTML中双引号更为常见。

在任何具有Prettier配置的地方设置"jsxSingleQuote": true,这应该可以解决问题。

答案 3 :(得分:-1)

只需将漂亮的配置添加到可视代码的 settings.json 中即可。

"prettier.singleQuote": true,