12

我在可视化代码中与 EsLint 和 Prettier 合作。没有单引号和双引号,一切都很好。

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

我该如何解决这个问题。

4

4 回答 4

4

正如您已经singleQuote: true在更漂亮的配置中设置的那样,我怀疑您在 JSX 标记中看到单引号转换为双引号。这是因为 Prettier 对 JSX 有一个单独的规则:

"jsxSingleQuote": true

如果没有这个,即使使用"singleQuote": true,Prettier 仍然会将 JSX 中的单引号转换为双引号。

根据 Prettier 的说法,JSX 中的双引号是默认设置,因为它源自 HTML,其中双引号更为常见。

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

于 2020-11-03T20:53:36.723 回答
2

这只发生'在你的字符串中,例如('it\'sa thing')。Prettier 有这个问题,显然没有解决方案。

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

`it's a thing`

你不必逃避这一点。

于 2019-02-13T09:15:01.897 回答
-2

打开设置并列出更漂亮的清单:单引号

于 2019-12-23T03:26:56.613 回答
-3

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

"prettier.singleQuote": true,
于 2020-01-26T21:18:04.050 回答