vscode react javascript ecmascript-6 eslint code-formatting prettier

javascript - react - prettier line width



¿Cuál es la diferencia entre prettier-eslint, eslint-plugin-prettier y eslint-config-prettier? (1)

Quiero usar Prettier y ESLint juntos, pero experimenté algunos conflictos simplemente al usarlos uno tras otro. Veo que hay estos tres paquetes que parecen permitir que se usen en conjunto:

  • prettier-eslint
  • eslint-plugin-prettier
  • eslint-config-prettier

Sin embargo, no estoy seguro de qué usar, ya que todos estos nombres de paquete contienen eslint y prettier .

¿Cuál debería usar?


ESLint contiene muchas reglas y aquellas relacionadas con el formato pueden entrar en conflicto con Prettier, como arrow-parens , space-before-function-paren , etc. Por lo tanto, usarlas juntas causará algunos problemas. Las siguientes herramientas se han creado para usar ESLint y Prettier juntas.

Escribí una comparación en formato tabular en una esencia, ya que no admite el formato de tabla. Compruébalo si prefieres más organización.

prettier-eslint : ejecuta prettier luego ejecuta eslint --fix en el código. eslint generalmente tiene arreglos automáticos para formatear reglas relacionadas, y eslint --fix podrá arreglar el formateo conflictivo introducido por Prettier. No necesitará ejecutar el comando prettier separado.

eslint-plugin-prettier : es un complemento de ESLint, lo que significa que contiene la implementación de reglas adicionales que ESLint verificará. Este complemento utiliza Prettier debajo del capó y generará problemas cuando su código difiera de la salida esperada de Prettier. Esos problemas se pueden solucionar automáticamente a través de --fix . Con este complemento, no necesita ejecutar el comando prettier separado, el comando se ejecuta como parte del complemento. Este complemento no desactiva las reglas relacionadas con el formato, y deberá desactivarlas si ve conflictos para dichas reglas, ya sea manualmente o mediante eslint-config-prettier .

eslint-config-prettier : es una configuración de ESLint y contiene configuraciones para reglas (si ciertas reglas están activadas, desactivadas o configuraciones especiales). Esta configuración le permite usar Prettier con otras configuraciones de ESLint como eslint-config-airbnb al desactivar las reglas relacionadas con el formato que pueden entrar en conflicto con Prettier. Con esta configuración, no necesita usar prettier-eslint ya que ESLint no se quejaría después de que Prettier formatee su código. Sin embargo, deberá ejecutar el comando prettier separado.

Espero que esto resume las diferencias.

Actualización: prettier-eslint ya no se recomienda y puedes usar eslint-plugin-prettier y eslint-config-prettier juntos.