Vize

Toutes les règles Patina

Cet index permet de trouver l'objectif d'une règle, ses réglages par défaut et son groupe. Les pages des groupes présentent les explications, la configuration, les exemples complets incorrects et corrects ainsi que les limites actuelles. Les liens existants vers les règles et leurs exemples restent utilisables ici.

Les 66 entrées de projet renvoient aux fichiers partagés complets et aux exemples incorrects et corrects de la page des règles inter-fichiers. Les 60 codes d'analyse conservent leurs limites réelles : 19 codes CLI (18 paires de sources validées et un projet illustratif avec son graphe réactif conservé), 16 codes expérimentaux de l'analyseur Rust que cette passe CLI n'émet pas individuellement et 25 contrats sans producteur actuel. Configurer un identifiant n'active pas un producteur indisponible.

Le CLI public expose la même passe avec vize lint --cross-file. Les codes affichés vize:croquis/cf/* utilisent croquis/cf/* dans vue.linter.rules (sans vize:). Les diagnostics de niveau information/hint deviennent des avertissements CLI. Les emplacements associés expliquent la relation entre la source et le consommateur.

Règle Exemples Objectif
a11y/alt-text Mauvais · Bon Exiger un texte alternatif pour les éléments multimédias
a11y/anchor-has-content Mauvais · Bon Exiger un contenu accessible pour les éléments de lien
a11y/anchor-is-valid Mauvais · Bon Imposer un href valide sur les éléments de lien
a11y/aria-props Mauvais · Bon Interdire les attributs ARIA invalides
a11y/aria-role Mauvais · Bon Exiger un rôle ARIA valide et non abstrait pour les éléments possédant un rôle ARIA
a11y/aria-unsupported-elements Mauvais · Bon Interdire les attributs ARIA sur les éléments qui ne les prennent pas en charge
a11y/click-events-have-key-events Mauvais · Bon Exiger des gestionnaires de clavier avec les événements de clic
a11y/form-control-has-label Mauvais · Bon Exiger des libellés associés aux contrôles de formulaire
a11y/heading-has-content Mauvais · Bon Exiger un contenu accessible pour les éléments de titre
a11y/heading-levels Mauvais · Bon Interdire de sauter des niveaux de titre
a11y/iframe-has-title Mauvais · Bon Exiger un attribut title sur les éléments iframe
a11y/img-alt Mauvais · Bon Exiger un attribut alt sur les images pour les rendre accessibles
a11y/interactive-supports-focus Mauvais · Bon Exiger que les éléments possédant un rôle interactif puissent recevoir le focus
a11y/label-has-for Mauvais · Bon Exiger des contrôles de formulaire associés aux libellés
a11y/landmark-roles Mauvais · Bon Valider l’emplacement et l’unicité des rôles de zones de repère
a11y/media-has-caption Mauvais · Bon Exiger des sous-titres pour les éléments multimédias
a11y/mouse-events-have-key-events Mauvais · Bon Exiger des événements de focus et de perte du focus avec les événements de souris
a11y/no-access-key Mauvais · Bon Interdire l’utilisation de l’attribut accesskey
a11y/no-aria-hidden-on-focusable Mauvais · Bon Interdire aria-hidden="true" sur les éléments pouvant recevoir le focus
a11y/no-autofocus Mauvais · Bon Interdire l’utilisation de l’attribut autofocus
a11y/no-distracting-elements Mauvais · Bon Interdire les éléments distrayants tels que <marquee> et <blink>
a11y/no-i-for-icon Mauvais · Bon Interdire l’élément <i> pour les icônes
a11y/no-redundant-roles Mauvais · Bon Interdire les rôles ARIA redondants
a11y/no-refer-to-non-existent-id Mauvais · Bon Interdire les références à des identifiants inexistants
a11y/no-role-presentation-on-focusable Mauvais · Bon Interdire role="presentation" ou role="none" sur les éléments pouvant recevoir le focus
a11y/no-static-element-interactions Mauvais · Bon Interdire les gestionnaires d’événements sur les éléments statiques
a11y/placeholder-label-option Mauvais · Bon Exiger une option d’invite dans un select required
a11y/role-has-required-aria-props Mauvais · Bon Exiger les propriétés obligatoires des rôles ARIA
a11y/tabindex-no-positive Mauvais · Bon Interdire les valeurs positives de tabindex
a11y/use-list Mauvais · Bon Suggérer des éléments de liste pour les textes ressemblant à des listes à puces
css/no-display-none Mauvais · Bon Suggérer v-show plutôt que display: none
css/no-hardcoded-values Mauvais · Bon Suggérer des variables CSS plutôt que des valeurs codées en dur
css/no-id-selectors Mauvais · Bon Déconseiller les sélecteurs d’identifiant en CSS
css/no-important Mauvais · Bon Déconseiller !important en CSS
css/no-utility-classes Mauvais · Bon Déconseiller l’implémentation de classes utilitaires dans les styles des composants
css/no-v-bind-performance Mauvais · Bon Signaler le coût de performance de v-bind() en CSS
css/prefer-logical-properties Mauvais · Bon Recommander les propriétés logiques CSS pour mieux prendre en charge l’internationalisation
css/prefer-nested-selectors Mauvais · Bon Recommander l’imbrication CSS pour les sélecteurs de descendants
css/prefer-slotted Mauvais · Bon Recommander ::v-slotted() pour styliser le contenu des slots
css/require-font-display Mauvais · Bon Exiger font-display dans les règles @font-face
ecosystem/nuxt-prefer-nuxt-link Mauvais · Bon Préférer NuxtLink pour les liens internes à l’application
ecosystem/pinia-prefer-store-to-refs Mauvais · Bon Préférer storeToRefs() lors de la déstructuration des stores Pinia
ecosystem/router-link-require-to Mauvais · Bon Exiger une destination to sur les composants RouterLink et NuxtLink
ecosystem/void-link-require-href Mauvais · Bon Exiger href sur les composants Link de Void Vue
ecosystem/void-link-valid-method Mauvais · Bon Valider les props method statiques des composants Link de Void Vue
ecosystem/vue-i18n-no-missing-key Mauvais · Bon Signaler les clés vue-i18n statiques absentes des messages locaux du SFC
ecosystem/vue-router-extra-param Mauvais · Bon La route ne déclare pas tab ; Vue Router l’ignore.
ecosystem/vue-router-missing-param Mauvais · Bon Le paramètre obligatoire postId manque ; dépendre de la route actuelle est fragile.
ecosystem/vue-router-param-type Mauvais · Bon postId n’est pas répétable ; un tableau est donc invalide.
ecosystem/vue-router-prefer-named-link Mauvais · Bon Préférer les objets de routes nommées aux chaînes de chemin statiques dans RouterLink
ecosystem/vue-router-prefer-named-push Mauvais · Bon Préférer les objets de routes nommées pour la navigation programmatique de Vue Router
ecosystem/vue-router-unknown-route Mauvais · Bon Le nom est absent du routeur installé complet.
ecosystem/vue-test-utils-no-html-snapshot Mauvais · Bon Éviter les instantanés de wrapper.html() dans les tests Vue Test Utils
html/cross-component-nesting Mauvais · Bon Vérifier l’imbrication HTML réelle après la composition des composants importés.
html/deprecated-attr Mauvais · Bon Interdire les attributs HTML obsolètes
html/deprecated-element Mauvais · Bon Interdire les éléments HTML obsolètes
html/id-duplication Mauvais · Bon Interdire les identifiants d’éléments en double
html/no-consecutive-br Mauvais · Bon Interdire les éléments <br> consécutifs
html/no-dupe-style-properties Mauvais · Bon Interdire les propriétés en double dans les attributs de style en ligne
html/no-duplicate-class Mauvais · Bon Interdire les noms de classes en double dans un attribut class statique
html/no-duplicate-dt Mauvais · Bon Interdire les noms <dt> en double dans <dl>
html/no-empty-palpable-content Mauvais · Bon Interdire les éléments vides qui attendent un contenu visible
html/require-datetime Mauvais · Bon Exiger l’attribut datetime sur l’élément <time>
musea/no-empty-variant Mauvais · Bon Interdire les blocs <variant> vides
musea/prefer-design-tokens Mauvais · Bon Préférer les variables CSS de design tokens aux valeurs primitives codées en dur
musea/require-component Mauvais · Bon Exiger l’attribut component dans le bloc <art>
musea/require-title Mauvais · Bon Exiger l’attribut title dans le bloc <art>
musea/unique-variant-names Mauvais · Bon Exiger des noms de variants uniques
musea/valid-variant Mauvais · Bon Exiger un attribut name dans les blocs <variant>
nuxt/no-nuxt-config-test-key Mauvais · Bon Interdire la clé test dans la configuration Nuxt
nuxt/no-page-meta-runtime-values Mauvais · Bon Interdire les valeurs du contexte d’exécution évaluées immédiatement dans definePageMeta, extrait dans un chunk séparé à la compilation et exécuté avant le setup du composant
nuxt/nuxt-config-keys-order Mauvais · Bon Préférer l’ordre recommandé des propriétés de configuration Nuxt
nuxt/prefer-import-meta Mauvais · Bon Préférer import.meta.* à process.*
petite-vue/no-unsupported-directive Mauvais · Bon Interdire les directives non prises en charge par petite-vue
petite-vue/valid-v-effect Mauvais · Bon Exiger une expression non vide pour v-effect
petite-vue/valid-v-scope Mauvais · Bon Exiger que v-scope reçoive un objet littéral
script/component-options-name-casing Mauvais · Bon Imposer PascalCase à l’option name du composant
script/custom-event-name-casing Mauvais · Bon Imposer camelCase aux noms des événements personnalisés émis
script/define-emits-declaration Mauvais · Bon Imposer la forme typée defineEmits<{}>() à la place de la forme à l’exécution sous forme de tableau
script/define-macros-order Mauvais · Bon Imposer un ordre cohérent aux macros du compilateur Vue dans <script setup>
script/define-props-declaration Mauvais · Bon Imposer la forme typée defineProps<{ ... }>() à la place de la forme à l’exécution sous forme d’objet
script/define-props-destructuring Mauvais · Bon Imposer un style cohérent de déstructuration de defineProps dans <script setup>
script/no-arrow-functions-in-watch Mauvais · Bon Interdire les fonctions fléchées comme gestionnaires watch de l’Options API
script/no-async-in-computed Mauvais · Bon Interdire les fonctions asynchrones dans les propriétés calculées
script/no-boolean-default Mauvais · Bon Interdire une valeur par défaut sur une prop Boolean
script/no-deep-destructure-in-props Mauvais · Bon Interdire la déstructuration profondément imbriquée dans defineProps
script/no-deprecated-data-object-declaration Mauvais · Bon Interdire un objet littéral comme option data du composant (Vue 3 exige une fonction)
script/no-deprecated-destroyed-lifecycle Mauvais · Bon Interdire les hooks de cycle de vie dépréciés destroyed et beforeDestroy
script/no-deprecated-dollar-listeners-api Mauvais · Bon Interdire la propriété d’instance $listeners supprimée dans Vue 3 (fusionnée dans $attrs)
script/no-deprecated-dollar-scopedslots-api Mauvais · Bon Interdire la propriété d’instance $scopedSlots supprimée dans Vue 3 (utiliser $slots)
script/no-deprecated-events-api Mauvais · Bon Interdire l’API d’événements de Vue 2 supprimée ($on / $off / $once)
script/no-deprecated-props-default-this Mauvais · Bon Interdire this dans une fonction de valeur par défaut ou de validation de prop (supprimé dans Vue 3)
script/no-dupe-keys Mauvais · Bon Interdire les clés dupliquées entre props/data/computed/methods/setup/inject de l’Options API
script/no-duplicate-attr-inheritance Mauvais · Bon Signaler un composant qui applique deux fois ses attributs transmis automatiquement
script/no-export-in-script-setup Mauvais · Bon Interdire les instructions export dans <script setup>
script/no-expose-after-await Mauvais · Bon Interdire expose() et defineExpose() après un await
script/no-get-current-instance Mauvais · Bon Interdire getCurrentInstance() en mode Vapor (renvoie null)
script/no-import-compiler-macros Mauvais · Bon Interdire l’import des macros du compilateur Vue importées automatiquement
script/no-internal-imports Mauvais · Bon Interdire les imports depuis les modules internes de Vue
script/no-lifecycle-after-await Mauvais · Bon Interdire l’enregistrement de hooks de cycle de vie après un await dans setup()
script/no-multiple-slot-args Mauvais · Bon Interdire de passer plusieurs arguments à un appel de fonction de slot à portée
script/no-next-tick Mauvais · Bon Interdire l’utilisation de nextTick() dans les composants destinés à Vapor
script/no-options-api Mauvais · Bon Interdire les formes de l’Options API en mode Vapor
script/no-potential-component-option-typo Mauvais · Bon Signaler les fautes de frappe probables dans les noms d’options de composant de l’Options API
script/no-reactive-destructure Mauvais · Bon Interdire la déstructuration d’objets réactifs qui fait perdre la réactivité
script/no-ref-as-operand Mauvais · Bon Exiger l’accès via .value aux variables liées à une ref lorsqu’elles servent d’opérande
script/no-required-prop-with-default Mauvais · Bon Interdire une prop qui possède à la fois required: true et une valeur par défaut
script/no-reserved-identifiers Mauvais · Bon Interdire les identifiants réservés du compilateur Vue
script/no-reserved-keys Mauvais · Bon Interdire les noms réservés par Vue comme clés de props/data/computed/methods/setup/inject de l’Options API
script/no-reserved-props Mauvais · Bon Interdire les noms réservés dans la déclaration des props d’un composant
script/no-restricted-globals Mauvais · Bon Interdire les références aux variables globales de l’environnement d’exécution qui doivent passer par une couche d’encapsulation typée
script/no-restricted-members Mauvais · Bon Interdire les accès aux membres object.property configurés par le projet
script/no-side-effects-in-computed-properties Mauvais · Bon Interdire les effets de bord dans les getters calculés de l’Options API
script/no-top-level-ref-in-script Mauvais · Bon Interdire ref/reactive au niveau supérieur pour éviter la contamination de l’état entre requêtes
script/no-unstable-nested-components Mauvais · Bon Interdire les définitions de composants dans les fonctions setup ou de rendu
script/no-unused-emit-declarations Mauvais · Bon Signaler les événements déclarés qui ne sont jamais émis
script/no-use-computed-property-like-method Mauvais · Bon Interdire d’appeler une propriété calculée de l’Options API comme une méthode
script/no-watch-after-await Mauvais · Bon Interdire les observateurs créés après un await dans setup() sans conserver leur fonction d’arrêt
script/no-with-defaults Mauvais · Bon Déconseiller withDefaults au profit des valeurs par défaut dans la déstructuration (Vue 3.5+)
script/prefer-computed Mauvais · Bon Préférer computed() pour l’état réactif dérivé
script/prefer-define-options Mauvais · Bon Préférer defineOptions() à un <script> ordinaire qui ne définit que name/inheritAttrs
script/prefer-import-from-vue Mauvais · Bon Préférer les imports depuis 'vue' plutôt que depuis les packages internes
script/prefer-ref-over-reactive Mauvais · Bon Recommander ref() plutôt que reactive() pour gérer l’état
script/prefer-use-attrs Mauvais · Bon Recommander useAttrs() plutôt que context.attrs
script/prefer-use-id Mauvais · Bon Recommander useId() pour générer des identifiants uniques (Vue 3.5+)
script/prefer-use-slots Mauvais · Bon Recommander useSlots() plutôt que context.slots
script/prefer-use-template-ref Mauvais · Bon Recommander useTemplateRef plutôt que ref pour les références de template (Vue 3.5+)
script/require-default-prop Mauvais · Bon Exiger une valeur par défaut pour chaque prop facultative non booléenne
script/require-explicit-emits Mauvais · Bon Exiger la déclaration des événements émis dans defineEmits ou l’option emits
script/require-explicit-slots Mauvais · Bon Exiger que les slots utilisés via useSlots() soient explicitement typés avec defineSlots<...>()
script/require-function-return-type Mauvais · Bon Exiger des annotations de type de retour sur les fonctions
script/require-prop-type-constructor Mauvais · Bon Exiger que les valeurs type des props soient des constructeurs plutôt que des chaînes littérales
script/require-prop-types Mauvais · Bon Exiger que chaque prop déclare un type
script/require-symbol-provide Mauvais · Bon Recommander Symbol comme clé d’injection pour provide/inject
script/require-typed-object-prop Mauvais · Bon Exiger un type explicite sur une prop dont le type à l’exécution est Object ou Array
script/require-typed-ref Mauvais · Bon Exiger un argument de type explicite sur un ref() initialisé sans valeur, avec null ou avec undefined
script/require-valid-default-prop Mauvais · Bon Exiger que la valeur par défaut d’une prop soit valide pour son type déclaré
script/return-in-computed-property Mauvais · Bon Exiger une valeur de retour dans chaque getter calculé
script/return-in-emits-validator Mauvais · Bon Exiger une valeur de retour dans chaque validateur emits de l’Options API
script/valid-define-emits Mauvais · Bon Imposer une utilisation valide de defineEmits() (pas d’arguments de type et d’exécution combinés, pas de références locales, un seul appel)
script/valid-define-options Mauvais · Bon Imposer une utilisation valide de defineOptions() (un seul argument objet, sans props/emits/expose/slots)
script/valid-define-props Mauvais · Bon Imposer une utilisation valide de defineProps() (un seul appel, pas d’arguments de type et d’exécution combinés, pas de références locales)
script/valid-next-tick Mauvais · Bon Exiger que le résultat d’un appel nextTick() soit attendu, chaîné ou associé à un callback
ssr/no-browser-globals-in-ssr Mauvais · Bon Interdire les variables globales propres au navigateur dans un contexte SSR
ssr/no-hydration-mismatch Mauvais · Bon Interdire les valeurs non déterministes qui causent des divergences d’hydratation
type/no-floating-promises Mauvais · Bon Interdire les Promises laissées sans traitement
type/no-reactivity-loss Mauvais · Bon Interdire les instantanés ordinaires de valeurs réactives lors des affectations et des appels
type/no-unsafe-template-binding Mauvais · Bon Interdire les liaisons de template dont le type résolu est non sûr
type/require-typed-emits Mauvais · Bon Exiger une définition de type pour defineEmits
type/require-typed-props Mauvais · Bon Exiger une définition de type pour defineProps
type/strict-boolean-expressions Mauvais · Bon Exiger des expressions booléennes sûres dans les conditions des scripts et des templates
vapor/no-inline-template Mauvais · Bon Interdire l’attribut obsolète inline-template
vapor/no-vue-lifecycle-events Mauvais · Bon Interdire les événements de cycle de vie @vue:xxx par élément (non pris en charge dans Vapor)
vapor/prefer-static-class Mauvais · Bon Préférer une classe statique à une liaison de classe dynamique pour les chaînes littérales
vapor/require-vapor-attribute Mauvais · Bon Suggérer l’ajout de l’attribut vapor à script setup
vize:croquis/cf/array-mutation Mauvais · Bon Un tableau est modifié par index, ce qu’un tableau réactif ne suit pas.
vize:croquis/cf/async-boundary Mauvais · Bon Un état réactif traverse une frontière asynchrone et peut être observé dans un état périmé.
vize:croquis/cf/async-no-suspense Mauvais · Bon Un composant asynchrone est rendu sans frontière Suspense.
vize:croquis/cf/browser-api-ssr Mauvais · Bon Une API réservée au navigateur est utilisée alors que le composant peut être rendu sur le serveur.
vize:croquis/cf/circular-dep Mauvais · Bon Des composants s’importent mutuellement en formant un cycle.
vize:croquis/cf/circular-reactive-dependency Mauvais · Bon Des calculs réactifs dépendent les uns des autres en formant un cycle.
vize:croquis/cf/closure-captures-reactive Mauvais · Bon Une fermeture capture une valeur réactive et ne verra pas les mises à jour ultérieures.
vize:croquis/cf/composable-outside-setup Mauvais · Bon Un composable est appelé en dehors de setup.
vize:croquis/cf/computed-side-effects Mauvais · Bon L’accesseur d’une propriété calculée écrit dans l’état ou produit un autre effet de bord.
vize:croquis/cf/deep-import Mauvais · Bon Une chaîne d’imports est plus profonde que ce que le projet autorise.
vize:croquis/cf/destructuring-breaks-reactivity Mauvais · Bon La déstructuration d’un objet réactif copie ses champs et supprime leur suivi.
vize:croquis/cf/di-outside-setup Mauvais · Bon provide ou inject est appelé en dehors de setup.
vize:croquis/cf/dom-access-without-next-tick Mauvais · Bon Le DOM est lu avant que Vue ait appliqué la mise à jour.
vize:croquis/cf/duplicate-id Mauvais · Bon Le même identifiant d’élément est utilisé dans plusieurs composants.
vize:croquis/cf/event-listener-leak Mauvais · Bon Un écouteur d’événement est enregistré sans jamais être supprimé.
vize:croquis/cf/event-modifier Mauvais · Bon Un écouteur d’événement utilise un modificateur que l’événement émis ne prend pas en charge.
vize:croquis/cf/hydration-risk Mauvais · Bon Ce code regroupe plusieurs diagnostics de réactivité, dont une prop copiée dans une ref. Il ne signifie pas que chaque expression Date.now() est détectée par la passe inter-fichiers.
vize:croquis/cf/inherit-attrs-unused Mauvais · Bon inheritAttrs: false est défini et le composant ne lit jamais les attributs.
vize:croquis/cf/inject-without-symbol Mauvais · Bon inject utilise une clé ordinaire au lieu d’un symbole InjectionKey.
vize:croquis/cf/injected-async-mutation-race Mauvais · Bon Une valeur injectée est modifiée par une tâche asynchrone susceptible de provoquer une condition de concurrence.
vize:croquis/cf/lifecycle-outside-setup Mauvais · Bon Un hook de cycle de vie est enregistré en dehors de setup.
vize:croquis/cf/lifecycle-without-cleanup Mauvais · Bon Un hook de cycle de vie lance un travail sans jamais le nettoyer.
vize:croquis/cf/missing-required-prop Mauvais · Bon Une prop obligatoire n’est pas transmise.
vize:croquis/cf/missing-suspense Mauvais · Bon Une dépendance asynchrone est utilisée en dehors d’une frontière Suspense.
vize:croquis/cf/module-scope-reactive Mauvais · Bon Un état réactif est créé au niveau du module et partagé par tous les appelants.
vize:croquis/cf/multi-root-attrs Mauvais · Bon Un composant à plusieurs racines reçoit des attributs sans avoir d’endroit où les placer.
vize:croquis/cf/mutated-after-escape Mauvais · Bon Un objet réactif est modifié après avoir échappé à son propriétaire.
vize:croquis/cf/non-reactive-provide Mauvais · Bon Une valeur fournie n’est pas réactive ; les descendants ne verront donc pas les mises à jour.
vize:croquis/cf/non-unique-id Mauvais · Bon L’identifiant d’un élément dans une boucle n’est pas unique pour chaque entrée.
vize:croquis/cf/object-identity-comparison Mauvais · Bon Un objet réactif est comparé par identité, laquelle change lorsque l’enveloppe est retirée.
vize:croquis/cf/pinia-getter Mauvais · Bon Un getter Pinia est lu sans storeToRefs ; il ne restera donc pas réactif.
vize:croquis/cf/prop-type-mismatch Mauvais · Bon La valeur d’une prop transmise ne correspond pas au type déclaré.
vize:croquis/cf/provide-inject-type Mauvais · Bon Une valeur fournie et son injection n’ont pas le même type.
vize:croquis/cf/provide-without-symbol Mauvais · Bon provide utilise une clé ordinaire au lieu d’un symbole InjectionKey.
vize:croquis/cf/reactive-export Mauvais · Bon Un état réactif est exporté depuis le module.
vize:croquis/cf/reactivity-outside-setup Mauvais · Bon Une API réactive est appelée en dehors de setup.
vize:croquis/cf/reassignment-breaks-reactivity Mauvais · Bon Réaffecter une liaison réactive la remplace par une valeur ordinaire.
vize:croquis/cf/reference-escapes-scope Mauvais · Bon Une référence réactive échappe à la portée qui gère sa durée de vie.
vize:croquis/cf/setup-context-violation Mauvais · Bon Le contexte setup est utilisé d’une manière que Vue n’autorise pas.
vize:croquis/cf/shallow-deep-access Mauvais · Bon Une propriété profonde d’une valeur shallowReactive ou shallowRef est lue comme si elle était suivie.
vize:croquis/cf/spread-breaks-reactivity Mauvais · Bon Décomposer un objet réactif avec l’opérateur spread copie ses valeurs et supprime leur suivi.
vize:croquis/cf/suspense-no-fallback Mauvais · Bon <Suspense> n’a aucun contenu de secours.
vize:croquis/cf/template-ref-timing Mauvais · Bon Une référence de template est lue avant le montage du composant.
vize:croquis/cf/toraw-mutation Mauvais · Bon toRaw est utilisé, puis l’objet brut est modifié.
vize:croquis/cf/uncaught-error Mauvais · Bon Un composant peut lever une exception sans qu’aucune frontière d’erreur ne la capture.
vize:croquis/cf/undeclared-emit Mauvais · Bon Le composant émet un événement qui n’est pas déclaré.
vize:croquis/cf/undeclared-prop Mauvais · Bon Un parent transmet une prop que l’enfant ne déclare pas.
vize:croquis/cf/undefined-slot Mauvais · Bon Un parent remplit un slot que l’enfant n’expose pas.
vize:croquis/cf/unhandled-event Mauvais · Bon Un enfant émet un événement qu’aucun parent ne gère.
vize:croquis/cf/unmatched-inject Mauvais · Bon inject nomme une clé qu’aucun ancêtre ne fournit.
vize:croquis/cf/unmatched-listener Mauvais · Bon Un parent écoute un événement que l’enfant n’émet pas.
vize:croquis/cf/unregistered-component Mauvais · Bon Un template utilise un composant qui n’est ni enregistré ni importé.
vize:croquis/cf/unresolved-import Mauvais · Bon Un import ne se résout pas vers un module.
vize:croquis/cf/unused-attrs Mauvais · Bon Des attributs à transmettre automatiquement sont passés à un composant à plusieurs racines qui ne les utilise pas.
vize:croquis/cf/unused-emit Mauvais · Bon Un événement déclaré n’est jamais émis.
vize:croquis/cf/unused-provide Mauvais · Bon Une clé fournie n’est jamais injectée.
vize:croquis/cf/value-extraction-breaks-reactivity Mauvais · Bon Extraire une valeur réactive dans une variable locale fait perdre les mises à jour ultérieures.
vize:croquis/cf/watch-can-be-computed Mauvais · Bon Un observateur ne fait que copier une valeur dans l’état et peut être remplacé par une propriété calculée.
vize:croquis/cf/watcheffect-async Mauvais · Bon watchEffect lance une tâche asynchrone et ne peut pas nettoyer l’exécution précédente.
vize:croquis/cf/watcher-outside-setup Mauvais · Bon watch ou watchEffect est appelé en dehors de setup.
vue/a11y-img-alt Mauvais · Bon Exiger un attribut alt sur les images pour les rendre accessibles
vue/attribute-hyphenation Mauvais · Bon Imposer un style de nommage des attributs sur les composants personnalisés
vue/attribute-order Mauvais · Bon Imposer un ordre cohérent des attributs
vue/component-definition-name-casing Mauvais · Bon Imposer PascalCase ou kebab-case aux noms de définition des composants
vue/component-name-in-template-casing Mauvais · Bon Imposer une casse précise aux noms de composants dans les templates
vue/cross-file-attrs-fallthrough Mauvais · Bon Un parent transmet des attributs à un enfant résolu dont la racine ne peut pas en hériter et qui n’utilise pas explicitement $attrs.
vue/html-button-has-type Mauvais · Bon Exiger un type explicite et valide sur les éléments button
vue/html-quotes Mauvais · Bon Imposer un style de guillemets pour les attributs HTML
vue/html-self-closing Mauvais · Bon Imposer un style de fermeture automatique des balises
vue/max-template-complexity Mauvais · Bon Limiter la complexité propre du template d’un composant, cyclomatique et cognitive
vue/multi-word-component-names Mauvais · Bon Exiger des noms de composants composés de plusieurs mots
vue/mustache-interpolation-spacing Mauvais · Bon Imposer un espacement cohérent dans les interpolations à doubles accolades
vue/no-array-index-key Mauvais · Bon Interdire l’utilisation directe de la variable d’index de v-for comme :key
vue/no-bare-strings-in-template Mauvais · Bon Interdire le texte brut destiné aux utilisateurs dans les templates lorsqu’il devrait être internationalisé
vue/no-boolean-attr-value Mauvais · Bon Interdire les valeurs explicites des attributs HTML booléens
vue/no-child-content Mauvais · Bon Interdire le contenu enfant lors de l’utilisation de v-html ou v-text
vue/no-deprecated-filter Mauvais · Bon Interdire la syntaxe obsolète des filtres de Vue 2 utilisant l’opérateur pipe
vue/no-deprecated-functional-template Mauvais · Bon Interdire l’attribut functional sur le <template> d’un SFC
vue/no-deprecated-html-element-is Mauvais · Bon Interdire l’attribut is sur les éléments HTML natifs
vue/no-deprecated-inline-template Mauvais · Bon Interdire l’attribut obsolète inline-template
vue/no-deprecated-router-link-tag-prop Mauvais · Bon Interdire la prop tag sur <router-link>
vue/no-deprecated-scope-attribute Mauvais · Bon Interdire l’attribut obsolète scope sur <template>
vue/no-deprecated-slot-attribute Mauvais · Bon Interdire l’attribut obsolète slot
vue/no-deprecated-slot-scope-attribute Mauvais · Bon Interdire l’attribut obsolète slot-scope
vue/no-deprecated-v-bind-sync Mauvais · Bon Interdire le modificateur obsolète .sync sur v-bind
vue/no-deprecated-v-is Mauvais · Bon Interdire la directive obsolète v-is
vue/no-deprecated-v-on-native-modifier Mauvais · Bon Interdire le modificateur obsolète .native sur v-on
vue/no-deprecated-v-on-number-modifiers Mauvais · Bon Interdire les modificateurs numériques obsolètes keyCode sur v-on
vue/no-dupe-v-else-if Mauvais · Bon Interdire les conditions répétées dans les chaînes v-if / v-else-if
vue/no-duplicate-attributes Mauvais · Bon Interdire les attributs en double sur un même élément
vue/no-empty-component-block Mauvais · Bon Interdire les blocs SFC vides
vue/no-inline-style Mauvais · Bon Déconseiller l’utilisation d’attributs de style en ligne
vue/no-invalid-html-attribute Mauvais · Bon Interdire les valeurs statiques invalides des attributs HTML
vue/no-lone-template Mauvais · Bon Interdire les éléments <template> inutiles
vue/no-multi-spaces Mauvais · Bon Interdire plusieurs espaces consécutifs
vue/no-multiple-objects-in-class Mauvais · Bon Interdire plusieurs objets littéraux dans une liaison :class sous forme de tableau
vue/no-multiple-template-root Mauvais · Bon Interdire plusieurs nœuds racines dans un template
vue/no-mutating-props Mauvais · Bon Interdire la modification des props d’un composant
vue/no-negated-v-if-condition Mauvais · Bon Interdire une condition v-if négative lorsque la chaîne comporte un v-else
vue/no-non-component-keep-alive-child Mauvais · Bon Interdire les enveloppes d’éléments ordinaires directement sous <KeepAlive>
vue/no-preprocessor-lang Mauvais · Bon Déconseiller les préprocesseurs CSS au profit du CSS moderne
vue/no-reserved-component-names Mauvais · Bon Interdire l’utilisation de noms réservés comme noms de composants
vue/no-root-v-if Mauvais · Bon Interdire v-if sur l’unique élément racine d’un template
vue/no-script-non-standard-lang Mauvais · Bon Déconseiller les valeurs lang non standard dans les scripts
vue/no-src-attribute Mauvais · Bon Déconseiller l’attribut src sur les blocs SFC
vue/no-static-inline-styles Mauvais · Bon Interdire les attributs de style en ligne statiques
vue/no-template-key Mauvais · Bon Interdire l’attribut key sur <template>
vue/no-template-lang Mauvais · Bon Déconseiller l’attribut lang sur le bloc template
vue/no-template-shadow Mauvais · Bon Interdire les noms de variables qui masquent des variables d’une portée externe
vue/no-template-target-blank Mauvais · Bon Interdire target="_blank" sans rel="noopener noreferrer"
vue/no-textarea-mustache Mauvais · Bon Interdire l’interpolation à doubles accolades dans <textarea>
vue/no-undefined-refs Mauvais · Bon Interdire les références à des variables non définies dans les templates
vue/no-unsafe-url Mauvais · Bon Signaler les liaisons d’URL potentiellement dangereuses
vue/no-unsandboxed-iframe Mauvais · Bon Exiger un attribut sandbox sur les éléments iframe
vue/no-unused-components Mauvais · Bon Interdire l’enregistrement de composants inutilisés dans les templates
vue/no-unused-properties Mauvais · Bon Interdire les propriétés inutilisées définies dans defineProps
vue/no-unused-refs Mauvais · Bon Signaler les refs de template (ref="x") jamais référencées dans <script>
vue/no-unused-setup-bindings Mauvais · Bon Interdire les liaisons script setup qui ne sont jamais lues
vue/no-unused-vars Mauvais · Bon Interdire les variables inutilisées définies dans les directives v-for et v-slot
vue/no-use-v-else-with-v-for Mauvais · Bon Interdire v-else-if ou v-else sur le même élément que v-for
vue/no-use-v-if-with-v-for Mauvais · Bon Interdire v-if sur le même élément que v-for
vue/no-useless-mustaches Mauvais · Bon Interdire une interpolation à doubles accolades dont l’expression est une chaîne littérale constante
vue/no-useless-template-attributes Mauvais · Bon Interdire les attributs inutiles sur les éléments <template>
vue/no-useless-v-bind Mauvais · Bon Interdire un v-bind dont la valeur est une simple chaîne littérale
vue/no-v-for-template-key-on-child Mauvais · Bon Interdire key sur l’enfant d’un <template v-for>
vue/no-v-html Mauvais · Bon Déconseiller v-html pour prévenir les vulnérabilités XSS
vue/no-v-text Mauvais · Bon Interdire la directive v-text ; préférer l’interpolation à doubles accolades
vue/no-v-text-v-html-on-component Mauvais · Bon Interdire v-text / v-html sur les éléments de composants
vue/permitted-contents Mauvais · Bon Faire respecter les règles du modèle de contenu HTML
vue/prefer-props-shorthand Mauvais · Bon Recommander la syntaxe abrégée des props (Vue 3.4+)
vue/prefer-true-attribute-shorthand Mauvais · Bon Préférer la syntaxe abrégée pour un attribut booléen lié à true
vue/prop-name-casing Mauvais · Bon Imposer une casse aux noms des props déclarées
vue/require-component-is Mauvais · Bon Exiger v-bind:is sur les éléments <component>
vue/require-component-registration Mauvais · Bon Exiger un import ou un enregistrement explicite des composants
vue/require-scoped-style Mauvais · Bon Exiger l’attribut scoped sur les balises style
vue/require-toggle-inside-transition Mauvais · Bon Exiger un mécanisme de bascule sur l’élément enveloppé par <transition>
vue/require-v-for-key Mauvais · Bon Exiger v-bind:key avec les directives v-for
vue/scoped-event-names Mauvais · Bon Recommander des noms d’événements préfixés par leur contexte au format context:event
vue/sfc-element-order Mauvais · Bon Imposer un ordre cohérent des éléments de premier niveau d’un SFC
vue/single-style-block Mauvais · Bon Recommander un seul bloc style
vue/slot-name-casing Mauvais · Bon Imposer kebab-case aux slots nommés utilisés avec v-slot
vue/this-in-template Mauvais · Bon Interdire this. dans les expressions des templates
vue/use-unique-element-ids Mauvais · Bon Imposer des identifiants d’éléments uniques avec useId() plutôt que des littéraux statiques
vue/use-v-on-exact Mauvais · Bon Imposer le modificateur .exact sur v-on en présence de gestionnaires utilisant des modificateurs
vue/v-bind-style Mauvais · Bon Imposer un style de directive v-bind
vue/v-on-event-hyphenation Mauvais · Bon Imposer des tirets dans les noms d’événements personnalisés de v-on sur les composants
vue/v-on-handler-style Mauvais · Bon Imposer une référence de méthode ou une fonction en ligne pour les gestionnaires v-on
vue/v-on-style Mauvais · Bon Imposer un style de directive v-on
vue/v-slot-style Mauvais · Bon Imposer un style de directive v-slot
vue/valid-attribute-name Mauvais · Bon Exiger des noms d’attributs valides
vue/valid-template-root Mauvais · Bon Exiger une racine <template> valide selon la sémantique des fragments de Vue 3
vue/valid-v-bind Mauvais · Bon Exiger des directives v-bind valides
vue/valid-v-cloak Mauvais · Bon Exiger des directives v-cloak valides
vue/valid-v-else Mauvais · Bon Exiger des directives v-else valides
vue/valid-v-else-if Mauvais · Bon Exiger des directives v-else-if valides
vue/valid-v-for Mauvais · Bon Exiger des directives v-for valides
vue/valid-v-html Mauvais · Bon Exiger des directives v-html valides
vue/valid-v-if Mauvais · Bon Exiger des directives v-if valides
vue/valid-v-is Mauvais · Bon Exiger des directives v-is valides
vue/valid-v-memo Mauvais · Bon Exiger des directives v-memo valides
vue/valid-v-model Mauvais · Bon Exiger des directives v-model valides
vue/valid-v-on Mauvais · Bon Exiger des directives v-on valides
vue/valid-v-once Mauvais · Bon Exiger des directives v-once valides
vue/valid-v-pre Mauvais · Bon Exiger des directives v-pre valides
vue/valid-v-show Mauvais · Bon Exiger des directives v-show valides
vue/valid-v-slot Mauvais · Bon Exiger des directives v-slot valides
vue/valid-v-text Mauvais · Bon Exiger des directives v-text valides
vue/warn-custom-block Mauvais · Bon Signaler les blocs personnalisés dans les fichiers SFC
vue/warn-custom-directive Mauvais · Bon Signaler les directives personnalisées nécessitant un enregistrement

Toutes les règles · Options des règles · Correspondance de migration ESLint · Vérifications du projet · Attributs entre composants

a11y/alt-text

Exiger un texte alternatif pour les éléments multimédias

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/anchor-has-content

Exiger un contenu accessible pour les éléments de lien

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/anchor-is-valid

Imposer un href valide sur les éléments de lien

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/aria-props

Interdire les attributs ARIA invalides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/aria-role

Exiger un rôle ARIA valide et non abstrait pour les éléments possédant un rôle ARIA

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/aria-unsupported-elements

Interdire les attributs ARIA sur les éléments qui ne les prennent pas en charge

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/click-events-have-key-events

Exiger des gestionnaires de clavier avec les événements de clic

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/form-control-has-label

Exiger des libellés associés aux contrôles de formulaire

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/heading-has-content

Exiger un contenu accessible pour les éléments de titre

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/heading-levels

Interdire de sauter des niveaux de titre

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/iframe-has-title

Exiger un attribut title sur les éléments iframe

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/img-alt

Exiger un attribut alt sur les images pour les rendre accessibles

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/interactive-supports-focus

Exiger que les éléments possédant un rôle interactif puissent recevoir le focus

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/label-has-for

Exiger des contrôles de formulaire associés aux libellés

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/landmark-roles

Valider l’emplacement et l’unicité des rôles de zones de repère

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/media-has-caption

Exiger des sous-titres pour les éléments multimédias

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/mouse-events-have-key-events

Exiger des événements de focus et de perte du focus avec les événements de souris

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-access-key

Interdire l’utilisation de l’attribut accesskey

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-aria-hidden-on-focusable

Interdire aria-hidden="true" sur les éléments pouvant recevoir le focus

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-autofocus

Interdire l’utilisation de l’attribut autofocus

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-distracting-elements

Interdire les éléments distrayants tels que <marquee> et <blink>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-i-for-icon

Interdire l’élément <i> pour les icônes

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-redundant-roles

Interdire les rôles ARIA redondants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-refer-to-non-existent-id

Interdire les références à des identifiants inexistants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-role-presentation-on-focusable

Interdire role="presentation" ou role="none" sur les éléments pouvant recevoir le focus

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/no-static-element-interactions

Interdire les gestionnaires d’événements sur les éléments statiques

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/placeholder-label-option

Exiger une option d’invite dans un select required

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/role-has-required-aria-props

Exiger les propriétés obligatoires des rôles ARIA

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/tabindex-no-positive

Interdire les valeurs positives de tabindex

Mauvais

Bon

Exemples du groupe · Fiche de la règle

a11y/use-list

Suggérer des éléments de liste pour les textes ressemblant à des listes à puces

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/no-display-none

Suggérer v-show plutôt que display: none

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/no-hardcoded-values

Suggérer des variables CSS plutôt que des valeurs codées en dur

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/no-id-selectors

Déconseiller les sélecteurs d’identifiant en CSS

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/no-important

Déconseiller !important en CSS

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/no-utility-classes

Déconseiller l’implémentation de classes utilitaires dans les styles des composants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/no-v-bind-performance

Signaler le coût de performance de v-bind() en CSS

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/prefer-logical-properties

Recommander les propriétés logiques CSS pour mieux prendre en charge l’internationalisation

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/prefer-nested-selectors

Recommander l’imbrication CSS pour les sélecteurs de descendants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/prefer-slotted

Recommander ::v-slotted() pour styliser le contenu des slots

Mauvais

Bon

Exemples du groupe · Fiche de la règle

css/require-font-display

Exiger font-display dans les règles @font-face

Mauvais

Bon

Exemples du groupe · Fiche de la règle

Préférer NuxtLink pour les liens internes à l’application

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/pinia-prefer-store-to-refs

Préférer storeToRefs() lors de la déstructuration des stores Pinia

Mauvais

Bon

Exemples du groupe · Fiche de la règle

Exiger une destination to sur les composants RouterLink et NuxtLink

Mauvais

Bon

Exemples du groupe · Fiche de la règle

Exiger href sur les composants Link de Void Vue

Mauvais

Bon

Exemples du groupe · Fiche de la règle

Valider les props method statiques des composants Link de Void Vue

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-i18n-no-missing-key

Signaler les clés vue-i18n statiques absentes des messages locaux du SFC

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-router-extra-param

La route ne déclare pas tab ; Vue Router l’ignore.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-router-missing-param

Le paramètre obligatoire postId manque ; dépendre de la route actuelle est fragile.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-router-param-type

postId n’est pas répétable ; un tableau est donc invalide.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

Préférer les objets de routes nommées aux chaînes de chemin statiques dans RouterLink

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-router-prefer-named-push

Préférer les objets de routes nommées pour la navigation programmatique de Vue Router

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-router-unknown-route

Le nom est absent du routeur installé complet.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ecosystem/vue-test-utils-no-html-snapshot

Éviter les instantanés de wrapper.html() dans les tests Vue Test Utils

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/cross-component-nesting

Vérifier l’imbrication HTML réelle après la composition des composants importés.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/deprecated-attr

Interdire les attributs HTML obsolètes

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/deprecated-element

Interdire les éléments HTML obsolètes

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/id-duplication

Interdire les identifiants d’éléments en double

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/no-consecutive-br

Interdire les éléments <br> consécutifs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/no-dupe-style-properties

Interdire les propriétés en double dans les attributs de style en ligne

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/no-duplicate-class

Interdire les noms de classes en double dans un attribut class statique

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/no-duplicate-dt

Interdire les noms <dt> en double dans <dl>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/no-empty-palpable-content

Interdire les éléments vides qui attendent un contenu visible

Mauvais

Bon

Exemples du groupe · Fiche de la règle

html/require-datetime

Exiger l’attribut datetime sur l’élément <time>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

musea/no-empty-variant

Interdire les blocs <variant> vides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

musea/prefer-design-tokens

Préférer les variables CSS de design tokens aux valeurs primitives codées en dur

Mauvais

Bon

Exemples du groupe · Fiche de la règle

musea/require-component

Exiger l’attribut component dans le bloc <art>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

musea/require-title

Exiger l’attribut title dans le bloc <art>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

musea/unique-variant-names

Exiger des noms de variants uniques

Mauvais

Bon

Exemples du groupe · Fiche de la règle

musea/valid-variant

Exiger un attribut name dans les blocs <variant>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

nuxt/no-nuxt-config-test-key

Interdire la clé test dans la configuration Nuxt

Mauvais

Bon

Exemples du groupe · Fiche de la règle

nuxt/no-page-meta-runtime-values

Interdire les valeurs du contexte d’exécution évaluées immédiatement dans definePageMeta, extrait dans un chunk séparé à la compilation et exécuté avant le setup du composant

Mauvais

Bon

Exemples du groupe · Fiche de la règle

nuxt/nuxt-config-keys-order

Préférer l’ordre recommandé des propriétés de configuration Nuxt

Mauvais

Bon

Exemples du groupe · Fiche de la règle

nuxt/prefer-import-meta

Préférer import.meta.* à process.*

Mauvais

Bon

Exemples du groupe · Fiche de la règle

petite-vue/no-unsupported-directive

Interdire les directives non prises en charge par petite-vue

Mauvais

Bon

Exemples du groupe · Fiche de la règle

petite-vue/valid-v-effect

Exiger une expression non vide pour v-effect

Mauvais

Bon

Exemples du groupe · Fiche de la règle

petite-vue/valid-v-scope

Exiger que v-scope reçoive un objet littéral

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/component-options-name-casing

Imposer PascalCase à l’option name du composant

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/custom-event-name-casing

Imposer camelCase aux noms des événements personnalisés émis

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/define-emits-declaration

Imposer la forme typée defineEmits<{}>() à la place de la forme à l’exécution sous forme de tableau

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/define-macros-order

Imposer un ordre cohérent aux macros du compilateur Vue dans <script setup>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/define-props-declaration

Imposer la forme typée defineProps<{ ... }>() à la place de la forme à l’exécution sous forme d’objet

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/define-props-destructuring

Imposer un style cohérent de déstructuration de defineProps dans <script setup>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-arrow-functions-in-watch

Interdire les fonctions fléchées comme gestionnaires watch de l’Options API

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-async-in-computed

Interdire les fonctions asynchrones dans les propriétés calculées

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-boolean-default

Interdire une valeur par défaut sur une prop Boolean

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deep-destructure-in-props

Interdire la déstructuration profondément imbriquée dans defineProps

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deprecated-data-object-declaration

Interdire un objet littéral comme option data du composant (Vue 3 exige une fonction)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deprecated-destroyed-lifecycle

Interdire les hooks de cycle de vie dépréciés destroyed et beforeDestroy

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deprecated-dollar-listeners-api

Interdire la propriété d’instance $listeners supprimée dans Vue 3 (fusionnée dans $attrs)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deprecated-dollar-scopedslots-api

Interdire la propriété d’instance $scopedSlots supprimée dans Vue 3 (utiliser $slots)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deprecated-events-api

Interdire l’API d’événements de Vue 2 supprimée ($on / $off / $once)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-deprecated-props-default-this

Interdire this dans une fonction de valeur par défaut ou de validation de prop (supprimé dans Vue 3)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-dupe-keys

Interdire les clés dupliquées entre props/data/computed/methods/setup/inject de l’Options API

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-duplicate-attr-inheritance

Signaler un composant qui applique deux fois ses attributs transmis automatiquement

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-export-in-script-setup

Interdire les instructions export dans <script setup>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-expose-after-await

Interdire expose() et defineExpose() après un await

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-get-current-instance

Interdire getCurrentInstance() en mode Vapor (renvoie null)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-import-compiler-macros

Interdire l’import des macros du compilateur Vue importées automatiquement

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-internal-imports

Interdire les imports depuis les modules internes de Vue

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-lifecycle-after-await

Interdire l’enregistrement de hooks de cycle de vie après un await dans setup()

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-multiple-slot-args

Interdire de passer plusieurs arguments à un appel de fonction de slot à portée

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-next-tick

Interdire l’utilisation de nextTick() dans les composants destinés à Vapor

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-options-api

Interdire les formes de l’Options API en mode Vapor

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-potential-component-option-typo

Signaler les fautes de frappe probables dans les noms d’options de composant de l’Options API

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-reactive-destructure

Interdire la déstructuration d’objets réactifs qui fait perdre la réactivité

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-ref-as-operand

Exiger l’accès via .value aux variables liées à une ref lorsqu’elles servent d’opérande

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-required-prop-with-default

Interdire une prop qui possède à la fois required: true et une valeur par défaut

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-reserved-identifiers

Interdire les identifiants réservés du compilateur Vue

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-reserved-keys

Interdire les noms réservés par Vue comme clés de props/data/computed/methods/setup/inject de l’Options API

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-reserved-props

Interdire les noms réservés dans la déclaration des props d’un composant

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-restricted-globals

Interdire les références aux variables globales de l’environnement d’exécution qui doivent passer par une couche d’encapsulation typée

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-restricted-members

Interdire les accès aux membres object.property configurés par le projet

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-side-effects-in-computed-properties

Interdire les effets de bord dans les getters calculés de l’Options API

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-top-level-ref-in-script

Interdire ref/reactive au niveau supérieur pour éviter la contamination de l’état entre requêtes

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-unstable-nested-components

Interdire les définitions de composants dans les fonctions setup ou de rendu

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-unused-emit-declarations

Signaler les événements déclarés qui ne sont jamais émis

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-use-computed-property-like-method

Interdire d’appeler une propriété calculée de l’Options API comme une méthode

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-watch-after-await

Interdire les observateurs créés après un await dans setup() sans conserver leur fonction d’arrêt

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/no-with-defaults

Déconseiller withDefaults au profit des valeurs par défaut dans la déstructuration (Vue 3.5+)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-computed

Préférer computed() pour l’état réactif dérivé

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-define-options

Préférer defineOptions() à un <script> ordinaire qui ne définit que name/inheritAttrs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-import-from-vue

Préférer les imports depuis 'vue' plutôt que depuis les packages internes

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-ref-over-reactive

Recommander ref() plutôt que reactive() pour gérer l’état

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-use-attrs

Recommander useAttrs() plutôt que context.attrs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-use-id

Recommander useId() pour générer des identifiants uniques (Vue 3.5+)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-use-slots

Recommander useSlots() plutôt que context.slots

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/prefer-use-template-ref

Recommander useTemplateRef plutôt que ref pour les références de template (Vue 3.5+)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-default-prop

Exiger une valeur par défaut pour chaque prop facultative non booléenne

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-explicit-emits

Exiger la déclaration des événements émis dans defineEmits ou l’option emits

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-explicit-slots

Exiger que les slots utilisés via useSlots() soient explicitement typés avec defineSlots<...>()

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-function-return-type

Exiger des annotations de type de retour sur les fonctions

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-prop-type-constructor

Exiger que les valeurs type des props soient des constructeurs plutôt que des chaînes littérales

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-prop-types

Exiger que chaque prop déclare un type

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-symbol-provide

Recommander Symbol comme clé d’injection pour provide/inject

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-typed-object-prop

Exiger un type explicite sur une prop dont le type à l’exécution est Object ou Array

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-typed-ref

Exiger un argument de type explicite sur un ref() initialisé sans valeur, avec null ou avec undefined

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/require-valid-default-prop

Exiger que la valeur par défaut d’une prop soit valide pour son type déclaré

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/return-in-computed-property

Exiger une valeur de retour dans chaque getter calculé

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/return-in-emits-validator

Exiger une valeur de retour dans chaque validateur emits de l’Options API

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/valid-define-emits

Imposer une utilisation valide de defineEmits() (pas d’arguments de type et d’exécution combinés, pas de références locales, un seul appel)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/valid-define-options

Imposer une utilisation valide de defineOptions() (un seul argument objet, sans props/emits/expose/slots)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/valid-define-props

Imposer une utilisation valide de defineProps() (un seul appel, pas d’arguments de type et d’exécution combinés, pas de références locales)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

script/valid-next-tick

Exiger que le résultat d’un appel nextTick() soit attendu, chaîné ou associé à un callback

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ssr/no-browser-globals-in-ssr

Interdire les variables globales propres au navigateur dans un contexte SSR

Mauvais

Bon

Exemples du groupe · Fiche de la règle

ssr/no-hydration-mismatch

Interdire les valeurs non déterministes qui causent des divergences d’hydratation

Mauvais

Bon

Exemples du groupe · Fiche de la règle

type/no-floating-promises

Interdire les Promises laissées sans traitement

Mauvais

Bon

Exemples du groupe · Fiche de la règle

type/no-reactivity-loss

Interdire les instantanés ordinaires de valeurs réactives lors des affectations et des appels

Mauvais

Bon

Exemples du groupe · Fiche de la règle

type/no-unsafe-template-binding

Interdire les liaisons de template dont le type résolu est non sûr

Mauvais

Bon

Exemples du groupe · Fiche de la règle

type/require-typed-emits

Exiger une définition de type pour defineEmits

Mauvais

Bon

Exemples du groupe · Fiche de la règle

type/require-typed-props

Exiger une définition de type pour defineProps

Mauvais

Bon

Exemples du groupe · Fiche de la règle

type/strict-boolean-expressions

Exiger des expressions booléennes sûres dans les conditions des scripts et des templates

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vapor/no-inline-template

Interdire l’attribut obsolète inline-template

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vapor/no-vue-lifecycle-events

Interdire les événements de cycle de vie @vue:xxx par élément (non pris en charge dans Vapor)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vapor/prefer-static-class

Préférer une classe statique à une liaison de classe dynamique pour les chaînes littérales

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vapor/require-vapor-attribute

Suggérer l’ajout de l’attribut vapor à script setup

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/array-mutation

Un tableau est modifié par index, ce qu’un tableau réactif ne suit pas.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/async-boundary

Un état réactif traverse une frontière asynchrone et peut être observé dans un état périmé.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/async-no-suspense

Un composant asynchrone est rendu sans frontière Suspense.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/browser-api-ssr

Une API réservée au navigateur est utilisée alors que le composant peut être rendu sur le serveur.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/circular-dep

Des composants s’importent mutuellement en formant un cycle.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/circular-reactive-dependency

Des calculs réactifs dépendent les uns des autres en formant un cycle.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/closure-captures-reactive

Une fermeture capture une valeur réactive et ne verra pas les mises à jour ultérieures.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/composable-outside-setup

Un composable est appelé en dehors de setup.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/computed-side-effects

L’accesseur d’une propriété calculée écrit dans l’état ou produit un autre effet de bord.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/deep-import

Une chaîne d’imports est plus profonde que ce que le projet autorise.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/destructuring-breaks-reactivity

La déstructuration d’un objet réactif copie ses champs et supprime leur suivi.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/di-outside-setup

provide ou inject est appelé en dehors de setup.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/dom-access-without-next-tick

Le DOM est lu avant que Vue ait appliqué la mise à jour.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/duplicate-id

Le même identifiant d’élément est utilisé dans plusieurs composants.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/event-listener-leak

Un écouteur d’événement est enregistré sans jamais être supprimé.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/event-modifier

Un écouteur d’événement utilise un modificateur que l’événement émis ne prend pas en charge.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/hydration-risk

Ce code regroupe plusieurs diagnostics de réactivité, dont une prop copiée dans une ref. Il ne signifie pas que chaque expression Date.now() est détectée par la passe inter-fichiers.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/inherit-attrs-unused

inheritAttrs: false est défini et le composant ne lit jamais les attributs.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/inject-without-symbol

inject utilise une clé ordinaire au lieu d’un symbole InjectionKey.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/injected-async-mutation-race

Une valeur injectée est modifiée par une tâche asynchrone susceptible de provoquer une condition de concurrence.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/lifecycle-outside-setup

Un hook de cycle de vie est enregistré en dehors de setup.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/lifecycle-without-cleanup

Un hook de cycle de vie lance un travail sans jamais le nettoyer.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/missing-required-prop

Une prop obligatoire n’est pas transmise.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/missing-suspense

Une dépendance asynchrone est utilisée en dehors d’une frontière Suspense.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/module-scope-reactive

Un état réactif est créé au niveau du module et partagé par tous les appelants.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/multi-root-attrs

Un composant à plusieurs racines reçoit des attributs sans avoir d’endroit où les placer.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/mutated-after-escape

Un objet réactif est modifié après avoir échappé à son propriétaire.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/non-reactive-provide

Une valeur fournie n’est pas réactive ; les descendants ne verront donc pas les mises à jour.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/non-unique-id

L’identifiant d’un élément dans une boucle n’est pas unique pour chaque entrée.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/object-identity-comparison

Un objet réactif est comparé par identité, laquelle change lorsque l’enveloppe est retirée.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/pinia-getter

Un getter Pinia est lu sans storeToRefs ; il ne restera donc pas réactif.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/prop-type-mismatch

La valeur d’une prop transmise ne correspond pas au type déclaré.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/provide-inject-type

Une valeur fournie et son injection n’ont pas le même type.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/provide-without-symbol

provide utilise une clé ordinaire au lieu d’un symbole InjectionKey.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/reactive-export

Un état réactif est exporté depuis le module.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/reactivity-outside-setup

Une API réactive est appelée en dehors de setup.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/reassignment-breaks-reactivity

Réaffecter une liaison réactive la remplace par une valeur ordinaire.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/reference-escapes-scope

Une référence réactive échappe à la portée qui gère sa durée de vie.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/setup-context-violation

Le contexte setup est utilisé d’une manière que Vue n’autorise pas.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/shallow-deep-access

Une propriété profonde d’une valeur shallowReactive ou shallowRef est lue comme si elle était suivie.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/spread-breaks-reactivity

Décomposer un objet réactif avec l’opérateur spread copie ses valeurs et supprime leur suivi.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/suspense-no-fallback

<Suspense> n’a aucun contenu de secours.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/template-ref-timing

Une référence de template est lue avant le montage du composant.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/toraw-mutation

toRaw est utilisé, puis l’objet brut est modifié.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/uncaught-error

Un composant peut lever une exception sans qu’aucune frontière d’erreur ne la capture.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/undeclared-emit

Le composant émet un événement qui n’est pas déclaré.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/undeclared-prop

Un parent transmet une prop que l’enfant ne déclare pas.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/undefined-slot

Un parent remplit un slot que l’enfant n’expose pas.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unhandled-event

Un enfant émet un événement qu’aucun parent ne gère.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unmatched-inject

inject nomme une clé qu’aucun ancêtre ne fournit.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unmatched-listener

Un parent écoute un événement que l’enfant n’émet pas.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unregistered-component

Un template utilise un composant qui n’est ni enregistré ni importé.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unresolved-import

Un import ne se résout pas vers un module.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unused-attrs

Des attributs à transmettre automatiquement sont passés à un composant à plusieurs racines qui ne les utilise pas.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unused-emit

Un événement déclaré n’est jamais émis.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/unused-provide

Une clé fournie n’est jamais injectée.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/value-extraction-breaks-reactivity

Extraire une valeur réactive dans une variable locale fait perdre les mises à jour ultérieures.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/watch-can-be-computed

Un observateur ne fait que copier une valeur dans l’état et peut être remplacé par une propriété calculée.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/watcheffect-async

watchEffect lance une tâche asynchrone et ne peut pas nettoyer l’exécution précédente.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vize:croquis/cf/watcher-outside-setup

watch ou watchEffect est appelé en dehors de setup.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/a11y-img-alt

Exiger un attribut alt sur les images pour les rendre accessibles

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/attribute-hyphenation

Imposer un style de nommage des attributs sur les composants personnalisés

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/attribute-order

Imposer un ordre cohérent des attributs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/component-definition-name-casing

Imposer PascalCase ou kebab-case aux noms de définition des composants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/component-name-in-template-casing

Imposer une casse précise aux noms de composants dans les templates

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/cross-file-attrs-fallthrough

Un parent transmet des attributs à un enfant résolu dont la racine ne peut pas en hériter et qui n’utilise pas explicitement $attrs.

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/html-button-has-type

Exiger un type explicite et valide sur les éléments button

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/html-quotes

Imposer un style de guillemets pour les attributs HTML

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/html-self-closing

Imposer un style de fermeture automatique des balises

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/max-template-complexity

Limiter la complexité propre du template d’un composant, cyclomatique et cognitive

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/multi-word-component-names

Exiger des noms de composants composés de plusieurs mots

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/mustache-interpolation-spacing

Imposer un espacement cohérent dans les interpolations à doubles accolades

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-array-index-key

Interdire l’utilisation directe de la variable d’index de v-for comme :key

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-bare-strings-in-template

Interdire le texte brut destiné aux utilisateurs dans les templates lorsqu’il devrait être internationalisé

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-boolean-attr-value

Interdire les valeurs explicites des attributs HTML booléens

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-child-content

Interdire le contenu enfant lors de l’utilisation de v-html ou v-text

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-filter

Interdire la syntaxe obsolète des filtres de Vue 2 utilisant l’opérateur pipe

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-functional-template

Interdire l’attribut functional sur le <template> d’un SFC

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-html-element-is

Interdire l’attribut is sur les éléments HTML natifs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-inline-template

Interdire l’attribut obsolète inline-template

Mauvais

Bon

Exemples du groupe · Fiche de la règle

Interdire la prop tag sur <router-link>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-scope-attribute

Interdire l’attribut obsolète scope sur <template>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-slot-attribute

Interdire l’attribut obsolète slot

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-slot-scope-attribute

Interdire l’attribut obsolète slot-scope

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-v-bind-sync

Interdire le modificateur obsolète .sync sur v-bind

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-v-is

Interdire la directive obsolète v-is

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-v-on-native-modifier

Interdire le modificateur obsolète .native sur v-on

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-deprecated-v-on-number-modifiers

Interdire les modificateurs numériques obsolètes keyCode sur v-on

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-dupe-v-else-if

Interdire les conditions répétées dans les chaînes v-if / v-else-if

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-duplicate-attributes

Interdire les attributs en double sur un même élément

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-empty-component-block

Interdire les blocs SFC vides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-inline-style

Déconseiller l’utilisation d’attributs de style en ligne

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-invalid-html-attribute

Interdire les valeurs statiques invalides des attributs HTML

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-lone-template

Interdire les éléments <template> inutiles

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-multi-spaces

Interdire plusieurs espaces consécutifs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-multiple-objects-in-class

Interdire plusieurs objets littéraux dans une liaison :class sous forme de tableau

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-multiple-template-root

Interdire plusieurs nœuds racines dans un template

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-mutating-props

Interdire la modification des props d’un composant

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-negated-v-if-condition

Interdire une condition v-if négative lorsque la chaîne comporte un v-else

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-non-component-keep-alive-child

Interdire les enveloppes d’éléments ordinaires directement sous <KeepAlive>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-preprocessor-lang

Déconseiller les préprocesseurs CSS au profit du CSS moderne

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-reserved-component-names

Interdire l’utilisation de noms réservés comme noms de composants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-root-v-if

Interdire v-if sur l’unique élément racine d’un template

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-script-non-standard-lang

Déconseiller les valeurs lang non standard dans les scripts

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-src-attribute

Déconseiller l’attribut src sur les blocs SFC

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-static-inline-styles

Interdire les attributs de style en ligne statiques

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-template-key

Interdire l’attribut key sur <template>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-template-lang

Déconseiller l’attribut lang sur le bloc template

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-template-shadow

Interdire les noms de variables qui masquent des variables d’une portée externe

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-template-target-blank

Interdire target="_blank" sans rel="noopener noreferrer"

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-textarea-mustache

Interdire l’interpolation à doubles accolades dans <textarea>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-undefined-refs

Interdire les références à des variables non définies dans les templates

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unsafe-url

Signaler les liaisons d’URL potentiellement dangereuses

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unsandboxed-iframe

Exiger un attribut sandbox sur les éléments iframe

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unused-components

Interdire l’enregistrement de composants inutilisés dans les templates

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unused-properties

Interdire les propriétés inutilisées définies dans defineProps

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unused-refs

Signaler les refs de template (ref="x") jamais référencées dans <script>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unused-setup-bindings

Interdire les liaisons script setup qui ne sont jamais lues

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-unused-vars

Interdire les variables inutilisées définies dans les directives v-for et v-slot

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-use-v-else-with-v-for

Interdire v-else-if ou v-else sur le même élément que v-for

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-use-v-if-with-v-for

Interdire v-if sur le même élément que v-for

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-useless-mustaches

Interdire une interpolation à doubles accolades dont l’expression est une chaîne littérale constante

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-useless-template-attributes

Interdire les attributs inutiles sur les éléments <template>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-useless-v-bind

Interdire un v-bind dont la valeur est une simple chaîne littérale

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-v-for-template-key-on-child

Interdire key sur l’enfant d’un <template v-for>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-v-html

Déconseiller v-html pour prévenir les vulnérabilités XSS

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-v-text

Interdire la directive v-text ; préférer l’interpolation à doubles accolades

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/no-v-text-v-html-on-component

Interdire v-text / v-html sur les éléments de composants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/permitted-contents

Faire respecter les règles du modèle de contenu HTML

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/prefer-props-shorthand

Recommander la syntaxe abrégée des props (Vue 3.4+)

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/prefer-true-attribute-shorthand

Préférer la syntaxe abrégée pour un attribut booléen lié à true

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/prop-name-casing

Imposer une casse aux noms des props déclarées

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/require-component-is

Exiger v-bind:is sur les éléments <component>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/require-component-registration

Exiger un import ou un enregistrement explicite des composants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/require-scoped-style

Exiger l’attribut scoped sur les balises style

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/require-toggle-inside-transition

Exiger un mécanisme de bascule sur l’élément enveloppé par <transition>

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/require-v-for-key

Exiger v-bind:key avec les directives v-for

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/scoped-event-names

Recommander des noms d’événements préfixés par leur contexte au format context:event

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/sfc-element-order

Imposer un ordre cohérent des éléments de premier niveau d’un SFC

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/single-style-block

Recommander un seul bloc style

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/slot-name-casing

Imposer kebab-case aux slots nommés utilisés avec v-slot

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/this-in-template

Interdire this. dans les expressions des templates

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/use-unique-element-ids

Imposer des identifiants d’éléments uniques avec useId() plutôt que des littéraux statiques

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/use-v-on-exact

Imposer le modificateur .exact sur v-on en présence de gestionnaires utilisant des modificateurs

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/v-bind-style

Imposer un style de directive v-bind

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/v-on-event-hyphenation

Imposer des tirets dans les noms d’événements personnalisés de v-on sur les composants

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/v-on-handler-style

Imposer une référence de méthode ou une fonction en ligne pour les gestionnaires v-on

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/v-on-style

Imposer un style de directive v-on

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/v-slot-style

Imposer un style de directive v-slot

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-attribute-name

Exiger des noms d’attributs valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-template-root

Exiger une racine <template> valide selon la sémantique des fragments de Vue 3

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-bind

Exiger des directives v-bind valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-cloak

Exiger des directives v-cloak valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-else

Exiger des directives v-else valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-else-if

Exiger des directives v-else-if valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-for

Exiger des directives v-for valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-html

Exiger des directives v-html valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-if

Exiger des directives v-if valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-is

Exiger des directives v-is valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-memo

Exiger des directives v-memo valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-model

Exiger des directives v-model valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-on

Exiger des directives v-on valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-once

Exiger des directives v-once valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-pre

Exiger des directives v-pre valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-show

Exiger des directives v-show valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-slot

Exiger des directives v-slot valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/valid-v-text

Exiger des directives v-text valides

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/warn-custom-block

Signaler les blocs personnalisés dans les fichiers SFC

Mauvais

Bon

Exemples du groupe · Fiche de la règle

vue/warn-custom-directive

Signaler les directives personnalisées nécessitant un enregistrement

Mauvais

Bon

Exemples du groupe · Fiche de la règle