ESLint zawiera wiele reguł, a te, które są związane z formatowaniem, mogą być w konflikcie z Prettier, takimi jak arrow-parens
, space-before-function-paren
itd. Dlatego używanie ich razem spowoduje pewne problemy. Poniższe narzędzia zostały stworzone do wspólnego korzystania z ESLint i Prettier.
Napisałem comparison in a tabular format w sensie, ponieważ Stack Overflow nie obsługuje formatowania tabel. Sprawdź to, jeśli wolisz więcej organizacji.

prettier-eslint
: Uruchamia prettier
następnie uruchomić eslint --fix
na kodzie. eslint
zwykle ma automatyczne poprawki do związanych z formatowaniem reguł, a eslint --fix
będzie w stanie naprawić konfliktowe formatowanie wprowadzone przez Prettier. Nie będzie trzeba oddzielnie uruchamiać polecenia prettier
.
: To jest wtyczka ESLint, co oznacza, że zawiera implementację dodatkowych reguł sprawdzanych przez ESLint. Ta wtyczka używa Prettier pod maską i powoduje problemy, gdy twój kod różni się od oczekiwanego wyjścia Prettiera. Te problemy można automatycznie naprawić za pomocą --fix
. Dzięki tej wtyczce nie trzeba oddzielnie uruchamiać polecenia prettier
, komenda uruchamiana jest jako część wtyczki. Ta wtyczka nie wyłącza reguł związanych z formatowaniem, a będziesz musiał je wyłączyć, jeśli zauważysz konflikty dotyczące takich reguł ręcznie lub przez eslint-config-prettier
.
eslint-config-prettier
: To jest konfiguracja ESLint i zawiera konfiguracje dla reguł (niezależnie od tego, czy określone reguły są włączone, wyłączone, czy specjalne konfiguracje). Ta konfiguracja pozwala używać Prettier z innymi konfiguracjami ESLint, takimi jak eslint-config-airbnb
, wyłączając reguły związane z formatowaniem, które mogą kolidować z Prettier. Dzięki tej konfiguracji nie musisz używać prettier-eslint
, ponieważ ESLint nie będzie narzekał po tym, jak Prettier formatuje twój kod. Będziesz jednak musiał osobno uruchomić komendę prettier
.
Mam nadzieję, że to podsumuje różnice.
Niesamowity format samo-odpowiedzi, pomocne informacje. –
Mam plik eslintrc, w którym mam niestandardowe reguły. tj. nie-extra-semi jednak działający eslint --fix z ładniejszymi wymaga średnika, czy potrzebuję osobnego pliku reguł dla ładniejszego? – jasan
Po prostu komentarz na temat ogólnej różnicy między wtyczkami i konfiguracjami eslint, ponieważ czułem, że to było to, czego mi brakowało: wtyczki definiują nowe reguły eslint i konfigurują zestaw, czy nie (i jak) reguły powinny być stosowane. – laugri