ESLint містить багато правил і ті, які форматування пов'язаних можуть конфліктувати з покращала, такі як arrow-parens
, space-before-function-paren
і т.д. Таким чином , використовуючи їх разом викличе деякі проблеми. Наступні інструменти створені для спільного використання ESLint та Prettier.
Я написав порівняння у табличному форматі в суті, оскільки Stack Overflow не підтримує форматування таблиці. Перевірте це, якщо ви віддаєте перевагу більшій організації.
prettier-eslint
: prettier
Потім запускається eslint --fix
на коді. eslint
зазвичай має автоматичні виправлення для правил форматування, що стосуються форматування, і eslint --fix
зможе виправити суперечливе форматування, представлене Prettier. Вам не потрібно буде запускати prettier
команду окремо.
eslint-plugin-prettier
: Це плагін ESLint, тобто він містить реалізацію додаткових правил, які ESLint перевірятиме. Цей плагін використовує Prettier під капотом і порушує проблеми, коли ваш код відрізняється від очікуваного виходу Prettier. Ці проблеми можна автоматично виправити за допомогою --fix
. За допомогою цього плагіна вам не потрібно запускати prettier
команду окремо, вона виконується як частина плагіна. Цей плагін не вимикає правила, пов’язані з форматуванням, і вам потрібно буде їх вимкнути, якщо ви бачите конфлікти для таких правил вручну або через eslint-config-prettier
.
eslint-config-prettier
: Це конфігурація ESLint, і вона містить конфігурації для правил (незалежно від того, ввімкнено, вимкнено певні правила чи спеціальні конфігурації). Ця конфігурація дозволяє використовувати Prettier з іншими конфігураціями ESLint, наприклад eslint-config-airbnb
, вимикаючи правила, пов’язані з форматуванням, які можуть конфліктувати з Prettier. За допомогою цієї конфігурації вам не потрібно використовувати, prettier-eslint
оскільки ESLint не скаржиться після того, як Prettier відформатує ваш код. Однак вам потрібно буде виконати prettier
команду окремо.
Сподіваюся, це підсумовує відмінності.
Оновлення: Рекомендована практика дозволяти Prettier обробляти форматування та ESLint для неформатування, prettier-eslint
це не в тому ж напрямку, що і ця практика, отже, prettier-eslint
більше не рекомендується. Можна використовувати eslint-plugin-prettier
і eslint-config-prettier
разом.