Предотвращение конфликта между Prettier (кодировщик кода) и ESLint / TSLint - PullRequest
0 голосов
/ 14 июня 2019

Я работаю над проектом Angular в VS Code, используя плагин «Prettier» для форматирования кода и плагины ESLint / TSLint для обеспечения соблюдения стандартов.

Я знаю, что это не «ошибка», но я настоятельно предпочитаю чистые сборки и люблю по возможности удалять предупреждения.

  groupMouseDown = d => {
   ...
  }; <--- This semicolon is the issue

Выше приведена функция в Typescript, использующая синтаксис «жирной стрелки», чтобы функция была встроенной. Обратите внимание, что в конце строки стоит точка с запятой.

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

Преттиер считается «самоуверенным» форматером, и их позиция по этому вопросу заключается в том, что они считают, что это должно быть там. Это нормально, но они также отказываются добавлять опцию, чтобы НЕ помещать ее туда, отсюда и «самоуверенная» часть.

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

Итак, в конце дня я вынужден доводить до конца несогласие и оставлять у меня без вариантов просто игнорировать это и делать то, что я хочу, чтобы они делали, что хорошо сочетается.

Кто-нибудь еще сталкивался с этим? Есть ли способ либо: 1) Не добавляйте точку с запятой ТОЛЬКО В ЭТОМ КОНКРЕТНОМ СЛУЧАЕ, или ... 2) Помешать линтерам сообщать об этом как о предупреждении ТОЛЬКО В ЭТОМ КОНКРЕТНОМ СЛУЧАЕ?

Что я не хочу делать, так это сказать Приттье, чтобы он не ставил ЛЮБЫЕ точки с запятой, где это необходимо, и при этом я не хочу указывать линтерам игнорировать ВСЕ ненужные точки с запятой.

1 Ответ

0 голосов
/ 15 июня 2019

Как правило, при использовании Prettier лучше всего позволить Prettier выполнять все форматирование . Используйте линтеры только для вопросов, не связанных с форматированием, таких как обнаружение ошибок.

Для ESLint и TSLint есть плагины, которые отключают все правила стиля:

Если ваш линтер все еще жалуется на какое-то правило форматирования, вы можете сообщить об ошибке в этих проектах GitHub и тем временем настроить свой линтер на отключение этого правила:

Кроме того, вы можете отключить правила для строк, блоков или файлов:

Это нормально, но они также отказываются добавлять опцию, чтобы НЕ помещать ее туда, отсюда и «самоуверенная» часть.

На всякий случай, если кто-то прилетит сюда из Google и запутается: у Преттиера есть параметры конфигурации, но они не настолько детальны, как хотелось бы. https://prettier.io/docs/en/configuration.html

...