JsPrettier в Sublime 3 не содержит одинарных кавычек className

Я использую Sublime Text 3 с JSPrettier для форматирования Javascript и JSX-кода.

У меня есть следующий набор в моей конфигурации JSPrettier:

// If true, will use single instead of double quotes
"singleQuote": true

Несмотря на это, при форматировании кода JSPrettier по-прежнему настаивает на том, чтобы помещать двойные кавычки в className и другие свойства JSX, например:

<div className="uxm-details-header-buttons">

или же

<Icon name="refresh" />

Я действительно ожидал всего с одинарной кавычкой, оставляя двойные для особых случаев.

Есть подсказка, как это решить?

1 ответ

В настоящее время это невозможно, используя только красивее. Кавычки в JSX всегда будут двойными, и более симпатичные будут игнорировать этот параметр.

Если вы хотите понять мотивы этого решения, вы можете прочитать эту ветку GitHub. Суть аргумента в пользу сохранения двойных кавычек JSX состоит в том, чтобы навязать стиль всему сообществу, и чем меньше параметров конфигурации, тем лучше.

Есть подсказка, как это решить?

Вы можете запустить свой код через prettier-eslint. Это форматирует ваш код через красивее, а затем передает результат этого в eslint --fix, Таким образом, вы можете воспользоваться преимуществами превосходных возможностей форматирования, но также воспользоваться возможностями конфигурации eslint.

В Sublime Text 3 этого можно достичь, изменив раздел пользовательских настроек пакета. (Предпочтения> Настройки пакета> JSPrettier)

{
"prettier_options": 
  {
  "singleQuote": true
  }
}
Другие вопросы по тегам