À propos du projet
eslint-plugin-react est un ensemble de règles de linting spécifiques à React pour ESLint. Il aide les développeurs à appliquer les bonnes pratiques React, à détecter les erreurs courantes et à maintenir un style de code cohérent dans les projets React.
L'installation est simple via npm : npm install eslint eslint-plugin-react --save-dev. Le plugin fonctionne à la fois avec le système de configuration legacy .eslintrc et avec le nouveau système de configuration flat eslint.config.js introduit dans ESLint v8.21.0.
Le plugin exporte plusieurs configurations partageables : recommended (applique les bonnes pratiques React), all (inclut toutes les règles disponibles) et jsx-runtime (pour la nouvelle transformation JSX de React 17+). Des variantes pour la configuration flat sont également disponibles sous les noms flat.recommended, flat.all et flat['jsx-runtime']. Ces configurations activent automatiquement JSX dans les options du parser.
La configuration prend en charge des paramètres partagés pour react.pragma, react.fragment, react.version, react.createClass, propWrapperFunctions, componentWrapperFunctions, formComponents et linkComponents. Ces paramètres permettent une personnalisation pour les projets utilisant MobX observer, styled-components, des composants de formulaire personnalisés ou des composants de lien personnalisés.
Le plugin inclut un grand nombre de règles couvrant le formatage JSX (jsx-indent, jsx-curly-spacing, jsx-props-no-multi-spaces), les définitions de composants (display-name, function-component-definition), la validation des props (jsx-no-duplicate-props, default-props-match-prop-types), les hooks (hook-use-state, forward-ref-uses-ref), l'accessibilité (button-has-type, iframe-missing-sandbox), la sécurité (jsx-no-target-blank, jsx-no-script-url), et bien d'autres. De nombreuses règles sont automatiquement corrigeables via l'option CLI --fix, et certaines fournissent des suggestions de correction manuelle via les intégrations d'éditeur.
La liste des règles inclut des règles obsolètes marquées d'un symbole croix, et le plugin maintient la compatibilité avec ESLint v8 et v9.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.