ESLint contém muitas regras e aqueles que são formatação relacionadas com o conflito força com mais bonito, como arrow-parens
, space-before-function-paren
, etc. Por isso usá-los juntos vai causar alguns problemas. As seguintes ferramentas foram criadas para usar o ESLint e o Prettier juntos.
Eu escrevi uma comparação em formato tabular em uma essência, uma vez que Stack Overflow não suporta formatação de tabela. Verifique se você prefere mais organização.
prettier-eslint
: É executado prettier
e executado eslint --fix
no código. eslint
geralmente tem correções automáticas para regras relacionadas à formatação e eslint --fix
será capaz de corrigir a formatação conflitante introduzida por Prettier. Você não precisará executar o prettier
comando separadamente.
eslint-plugin-prettier
: Este é um plugin ESLint, o que significa que contém a implementação de regras adicionais que o ESLint verificará. Este plug-in usa o Prettier sob o capô e levantará problemas quando o seu código for diferente da saída esperada do Prettier. Esses problemas podem ser corrigidos automaticamente via --fix
. Com este plugin, você não precisa executar o prettier
comando separadamente, o comando está sendo executado como parte do plugin. Este plug-in não desativa as regras relacionadas à formatação, e você precisará desativá-las se encontrar conflitos para essas regras manualmente ou via eslint-config-prettier
.
eslint-config-prettier
: Esta é uma configuração ESLint e contém configurações para regras (se certas regras estão ativadas, desativadas ou configurações especiais). Esta configuração permite que você use o Prettier com outras configurações ESLint, eslint-config-airbnb
por exemplo, desligando as regras relacionadas à formatação que podem entrar em conflito com o Prettier. Com esta configuração, você não precisa usar, prettier-eslint
pois o ESLint não reclamaria depois que o Prettier formatar seu código. No entanto, você precisará executar o prettier
comando separadamente.
Espero que isso resuma as diferenças.
Atualizar: É a prática recomendada deixar o Prettier lidar com a formatação e ESLint para problemas de não formatação, prettier-eslint
não é na mesma direção que essa prática, portanto, prettier-eslint
não é mais recomendado. Você pode usar eslint-plugin-prettier
e eslint-config-prettier
juntos.