Vize

Todas as Regras de Patina

Use este índice para encontrar o objetivo de uma regra, as configurações padrão e seu grupo. As páginas dos grupos apresentam as explicações, a configuração, os exemplos completos incorretos e corretos e os limites atuais. Os links existentes para regras e exemplos continuam disponíveis aqui.

As 66 entradas de projeto levam aos arquivos compartilhados completos e aos exemplos incorretos e corretos na página de regras entre arquivos. Os 60 códigos do analisador mantêm seus limites reais: 19 códigos da CLI (18 pares de fontes validados e um projeto ilustrativo com seu grafo reativo preservado), 16 códigos experimentais do analisador Rust que essa etapa da CLI não emite individualmente e 25 contratos sem produtor atual. Configurar um ID não ativa um produtor indisponível.

A CLI pública expõe a mesma etapa por meio de vize lint --cross-file. Os códigos exibidos como vize:croquis/cf/* usam croquis/cf/* em vue.linter.rules (omita vize:). Diagnósticos de informação ou sugestão tornam-se avisos da CLI. As localizações relacionadas explicam a relação entre a origem e o consumidor.

Regra Exemplos Finalidade
a11y/alt-text Incorreto · Correto Exigir texto alternativo para elementos de mídia
a11y/anchor-has-content Incorreto · Correto Exigir conteúdo acessível nos elementos de âncora
a11y/anchor-is-valid Incorreto · Correto Exigir um href válido nos elementos de âncora
a11y/aria-props Incorreto · Correto Proibir atributos ARIA inválidos
a11y/aria-role Incorreto · Correto Exigir que elementos com papéis ARIA usem um papel ARIA válido e não abstrato
a11y/aria-unsupported-elements Incorreto · Correto Proibir atributos ARIA em elementos que não os aceitam
a11y/click-events-have-key-events Incorreto · Correto Exigir manipuladores de eventos de teclado junto aos eventos de clique
a11y/form-control-has-label Incorreto · Correto Exigir rótulos associados aos controles de formulário
a11y/heading-has-content Incorreto · Correto Exigir conteúdo acessível nos elementos de título
a11y/heading-levels Incorreto · Correto Proibir que níveis de título sejam pulados
a11y/iframe-has-title Incorreto · Correto Exigir um atributo title nos elementos iframe
a11y/img-alt Incorreto · Correto Exigir o atributo alt nas imagens para garantir acessibilidade
a11y/interactive-supports-focus Incorreto · Correto Exigir que elementos com papéis interativos possam receber foco
a11y/label-has-for Incorreto · Correto Exigir controles de formulário associados aos rótulos
a11y/landmark-roles Incorreto · Correto Validar a posição e a unicidade dos papéis de regiões de referência
a11y/media-has-caption Incorreto · Correto Exigir legendas nos elementos de mídia
a11y/mouse-events-have-key-events Incorreto · Correto Exigir eventos de foco e perda de foco junto aos eventos de mouse
a11y/no-access-key Incorreto · Correto Proibir o uso do atributo accesskey
a11y/no-aria-hidden-on-focusable Incorreto · Correto Proibir aria-hidden="true" em elementos que podem receber foco
a11y/no-autofocus Incorreto · Correto Proibir o uso do atributo autofocus
a11y/no-distracting-elements Incorreto · Correto Proibir elementos que causam distração, como <marquee> e <blink>
a11y/no-i-for-icon Incorreto · Correto Proibir o uso do elemento <i> para ícones
a11y/no-redundant-roles Incorreto · Correto Proibir papéis ARIA redundantes
a11y/no-refer-to-non-existent-id Incorreto · Correto Proibir referências a IDs inexistentes
a11y/no-role-presentation-on-focusable Incorreto · Correto Proibir role="presentation" ou role="none" em elementos que podem receber foco
a11y/no-static-element-interactions Incorreto · Correto Proibir manipuladores de eventos em elementos estáticos
a11y/placeholder-label-option Incorreto · Correto Exigir uma opção de orientação em um select required
a11y/role-has-required-aria-props Incorreto · Correto Exigir as propriedades obrigatórias dos papéis ARIA
a11y/tabindex-no-positive Incorreto · Correto Proibir valores positivos de tabindex
a11y/use-list Incorreto · Correto Sugerir elementos de lista para textos que parecem itens de lista
css/no-display-none Incorreto · Correto Sugerir v-show em vez de display: none
css/no-hardcoded-values Incorreto · Correto Sugerir variáveis CSS em vez de valores fixos escritos diretamente
css/no-id-selectors Incorreto · Correto Desencorajar o uso de seletores de ID no CSS
css/no-important Incorreto · Correto Desencorajar o uso de !important no CSS
css/no-utility-classes Incorreto · Correto Alertar sobre a implementação de classes utilitárias nos estilos de componentes
css/no-v-bind-performance Incorreto · Correto Alertar sobre o custo de desempenho do v-bind() no CSS
css/prefer-logical-properties Incorreto · Correto Recomendar propriedades lógicas de CSS para melhorar o suporte à internacionalização
css/prefer-nested-selectors Incorreto · Correto Recomendar o aninhamento de CSS para seletores de descendentes
css/prefer-slotted Incorreto · Correto Recomendar ::v-slotted() para estilizar o conteúdo de slots
css/require-font-display Incorreto · Correto Exigir font-display nas regras @font-face
ecosystem/nuxt-prefer-nuxt-link Incorreto · Correto Preferir NuxtLink para links internos da aplicação
ecosystem/pinia-prefer-store-to-refs Incorreto · Correto Preferir storeToRefs() ao desestruturar stores do Pinia
ecosystem/router-link-require-to Incorreto · Correto Exigir um destino to nos componentes RouterLink e NuxtLink
ecosystem/void-link-require-href Incorreto · Correto Exigir href nos componentes Link do Void Vue
ecosystem/void-link-valid-method Incorreto · Correto Validar props method estáticas do Link do Void Vue
ecosystem/vue-i18n-no-missing-key Incorreto · Correto Relatar chaves estáticas do vue-i18n ausentes nas mensagens locais do SFC
ecosystem/vue-router-extra-param Incorreto · Correto A rota não declara tab; o Vue Router o descarta.
ecosystem/vue-router-missing-param Incorreto · Correto O parâmetro obrigatório postId está ausente; depender da rota atual é frágil.
ecosystem/vue-router-param-type Incorreto · Correto postId não é repetível, portanto um array é inválido.
ecosystem/vue-router-prefer-named-link Incorreto · Correto Preferir objetos de rotas nomeadas a strings de caminho estáticas no RouterLink
ecosystem/vue-router-prefer-named-push Incorreto · Correto Preferir objetos de rotas nomeadas para navegação programática com Vue Router
ecosystem/vue-router-unknown-route Incorreto · Correto O nome está ausente do roteador completo instalado.
ecosystem/vue-test-utils-no-html-snapshot Incorreto · Correto Evitar snapshots de wrapper.html() nos testes com Vue Test Utils
html/cross-component-nesting Incorreto · Correto Verificar o aninhamento HTML real após compor os componentes importados.
html/deprecated-attr Incorreto · Correto Proibir atributos HTML obsoletos
html/deprecated-element Incorreto · Correto Proibir elementos HTML obsoletos
html/id-duplication Incorreto · Correto Proibir IDs de elementos duplicados
html/no-consecutive-br Incorreto · Correto Proibir elementos <br> consecutivos
html/no-dupe-style-properties Incorreto · Correto Proibir propriedades duplicadas em atributos de estilo em linha
html/no-duplicate-class Incorreto · Correto Proibir nomes de classe duplicados em um atributo class estático
html/no-duplicate-dt Incorreto · Correto Proibir nomes <dt> duplicados em <dl>
html/no-empty-palpable-content Incorreto · Correto Proibir elementos vazios que esperam conteúdo visível
html/require-datetime Incorreto · Correto Exigir o atributo datetime no elemento <time>
musea/no-empty-variant Incorreto · Correto Proibir blocos <variant> vazios
musea/prefer-design-tokens Incorreto · Correto Preferir variáveis CSS de tokens de design a valores primitivos fixos escritos diretamente
musea/require-component Incorreto · Correto Exigir o atributo component no bloco <art>
musea/require-title Incorreto · Correto Exigir o atributo title no bloco <art>
musea/unique-variant-names Incorreto · Correto Exigir nomes de variante únicos
musea/valid-variant Incorreto · Correto Exigir o atributo name nos blocos <variant>
nuxt/no-nuxt-config-test-key Incorreto · Correto Proibir a definição da chave test na configuração do Nuxt
nuxt/no-page-meta-runtime-values Incorreto · Correto Proibir valores do contexto de execução no nível de avaliação imediata de definePageMeta, que é extraído para um fragmento separado durante a compilação e executado antes do setup do componente
nuxt/nuxt-config-keys-order Incorreto · Correto Preferir a ordem recomendada das propriedades de configuração do Nuxt
nuxt/prefer-import-meta Incorreto · Correto Preferir import.meta.* a process.*
petite-vue/no-unsupported-directive Incorreto · Correto Proibir diretivas que o petite-vue não aceita
petite-vue/valid-v-effect Incorreto · Correto Exigir uma expressão não vazia em v-effect
petite-vue/valid-v-scope Incorreto · Correto Exigir que v-scope vincule um objeto literal
script/component-options-name-casing Incorreto · Correto Exigir PascalCase na opção name do componente
script/custom-event-name-casing Incorreto · Correto Exigir camelCase nos nomes de eventos personalizados emitidos
script/define-emits-declaration Incorreto · Correto Exigir a forma de defineEmits<{}>() baseada em tipos em vez da forma em tempo de execução ou de array
script/define-macros-order Incorreto · Correto Exigir uma ordem consistente para as macros do compilador Vue em <script setup>
script/define-props-declaration Incorreto · Correto Exigir defineProps<{ ... }>() baseado em tipos em vez da forma com objeto em tempo de execução
script/define-props-destructuring Incorreto · Correto Exigir um estilo consistente de desestruturação de defineProps em <script setup>
script/no-arrow-functions-in-watch Incorreto · Correto Proibir funções de seta como manipuladores de watch na Options API
script/no-async-in-computed Incorreto · Correto Proibir funções assíncronas em propriedades computadas
script/no-boolean-default Incorreto · Correto Proibir um valor padrão em uma prop Boolean
script/no-deep-destructure-in-props Incorreto · Correto Proibir desestruturação profundamente aninhada em defineProps
script/no-deprecated-data-object-declaration Incorreto · Correto Proibir um literal de objeto como opção data do componente (o Vue 3 exige uma função)
script/no-deprecated-destroyed-lifecycle Incorreto · Correto Proibir os hooks de ciclo de vida obsoletos destroyed e beforeDestroy
script/no-deprecated-dollar-listeners-api Incorreto · Correto Proibir a propriedade de instância $listeners removida no Vue 3 (incorporada a $attrs)
script/no-deprecated-dollar-scopedslots-api Incorreto · Correto Proibir a propriedade de instância $scopedSlots removida no Vue 3 (usar $slots)
script/no-deprecated-events-api Incorreto · Correto Proibir a API de eventos do Vue 2 removida ($on / $off / $once)
script/no-deprecated-props-default-this Incorreto · Correto Proibir this dentro de uma função de valor padrão ou validação de prop (removido no Vue 3)
script/no-dupe-keys Incorreto · Correto Proibir chaves duplicadas entre props/data/computed/methods/setup/inject da Options API
script/no-duplicate-attr-inheritance Incorreto · Correto Sinalizar um componente que aplica duas vezes seus atributos repassados
script/no-export-in-script-setup Incorreto · Correto Proibir instruções export dentro de <script setup>
script/no-expose-after-await Incorreto · Correto Proibir expose() e defineExpose() após um await
script/no-get-current-instance Incorreto · Correto Proibir getCurrentInstance() no modo Vapor (retorna null)
script/no-import-compiler-macros Incorreto · Correto Proibir a importação de macros do compilador Vue que são importadas automaticamente
script/no-internal-imports Incorreto · Correto Proibir importações de módulos internos do Vue
script/no-lifecycle-after-await Incorreto · Correto Proibir hooks de ciclo de vida registrados após um await em setup()
script/no-multiple-slot-args Incorreto · Correto Proibir passar mais de um argumento a uma chamada de função de slot com escopo
script/no-next-tick Incorreto · Correto Proibir o uso de nextTick() em componentes orientados a Vapor
script/no-options-api Incorreto · Correto Proibir padrões da Options API no modo Vapor
script/no-potential-component-option-typo Incorreto · Correto Sinalizar prováveis erros de digitação nos nomes de opções de componentes da Options API
script/no-reactive-destructure Incorreto · Correto Proibir a desestruturação de objetos reativos que causa perda de reatividade
script/no-ref-as-operand Incorreto · Correto Exigir que variáveis vinculadas a refs sejam acessadas por .value quando usadas como operandos
script/no-required-prop-with-default Incorreto · Correto Proibir uma prop que tenha required: true e também um valor padrão
script/no-reserved-identifiers Incorreto · Correto Proibir o uso de identificadores reservados pelo compilador Vue
script/no-reserved-keys Incorreto · Correto Proibir nomes reservados pelo Vue como chaves de props/data/computed/methods/setup/inject na Options API
script/no-reserved-props Incorreto · Correto Proibir nomes reservados na declaração de props de um componente
script/no-restricted-globals Incorreto · Correto Proibir referências a variáveis globais do ambiente de execução que devem passar por um encapsulamento tipado
script/no-restricted-members Incorreto · Correto Proibir acessos a membros object.property configurados pelo projeto
script/no-side-effects-in-computed-properties Incorreto · Correto Proibir efeitos colaterais em getters computados da Options API
script/no-top-level-ref-in-script Incorreto · Correto Proibir ref/reactive no nível superior para evitar contaminação de estado entre requisições
script/no-unstable-nested-components Incorreto · Correto Proibir definições de componentes dentro de funções de setup ou renderização
script/no-unused-emit-declarations Incorreto · Correto Sinalizar eventos declarados que nunca são emitidos
script/no-use-computed-property-like-method Incorreto · Correto Proibir chamar uma propriedade computada da Options API como um método
script/no-watch-after-await Incorreto · Correto Proibir watchers registrados após um await em setup() sem guardar a função de parada
script/no-with-defaults Incorreto · Correto Desencorajar withDefaults em favor de valores padrão na desestruturação (Vue 3.5+)
script/prefer-computed Incorreto · Correto Preferir computed() para estado reativo derivado
script/prefer-define-options Incorreto · Correto Preferir defineOptions() a um <script> comum que só define name/inheritAttrs
script/prefer-import-from-vue Incorreto · Correto Preferir importar de 'vue' em vez de pacotes internos
script/prefer-ref-over-reactive Incorreto · Correto Recomendar o uso de ref() em vez de reactive() para gerenciar estado
script/prefer-use-attrs Incorreto · Correto Recomendar o uso de useAttrs() em vez de context.attrs
script/prefer-use-id Incorreto · Correto Recomendar o uso de useId() para gerar IDs únicos (Vue 3.5+)
script/prefer-use-slots Incorreto · Correto Recomendar o uso de useSlots() em vez de context.slots
script/prefer-use-template-ref Incorreto · Correto Recomendar useTemplateRef em vez de ref para referências de template (Vue 3.5+)
script/require-default-prop Incorreto · Correto Exigir um valor padrão para toda prop opcional que não seja Boolean
script/require-explicit-emits Incorreto · Correto Exigir que os eventos emitidos sejam declarados em defineEmits ou na opção emits
script/require-explicit-slots Incorreto · Correto Exigir que os slots consumidos por useSlots() sejam tipados explicitamente com defineSlots<...>()
script/require-function-return-type Incorreto · Correto Exigir anotações de tipo de retorno nas funções
script/require-prop-type-constructor Incorreto · Correto Exigir que os valores de type de props sejam construtores em vez de literais de string
script/require-prop-types Incorreto · Correto Exigir que toda prop declare um tipo
script/require-symbol-provide Incorreto · Correto Recomendar o uso de Symbol como chave de injeção para provide/inject
script/require-typed-object-prop Incorreto · Correto Exigir um tipo explícito em uma prop cujo tipo de tempo de execução seja Object ou Array
script/require-typed-ref Incorreto · Correto Exigir um argumento de tipo explícito em um ref() inicializado sem valor, com null ou com undefined
script/require-valid-default-prop Incorreto · Correto Exigir que o valor padrão de uma prop seja válido para seu tipo declarado
script/return-in-computed-property Incorreto · Correto Exigir um valor de retorno em todo getter computado
script/return-in-emits-validator Incorreto · Correto Exigir um valor de retorno em todo validador de emits da Options API
script/valid-define-emits Incorreto · Correto Exigir uso válido de defineEmits() (sem argumentos de tipo e de tempo de execução juntos, sem referências locais, uma única chamada)
script/valid-define-options Incorreto · Correto Exigir uso válido de defineOptions() (um único argumento de objeto, sem props/emits/expose/slots)
script/valid-define-props Incorreto · Correto Exigir uso válido de defineProps() (uma única chamada, sem argumentos de tipo e de tempo de execução juntos, sem referências locais)
script/valid-next-tick Incorreto · Correto Exigir que o resultado de uma chamada de nextTick() seja aguardado, encadeado ou receba uma função de retorno
ssr/no-browser-globals-in-ssr Incorreto · Correto Proibir variáveis globais exclusivas do navegador no contexto de SSR
ssr/no-hydration-mismatch Incorreto · Correto Proibir valores não determinísticos que causam divergências na hidratação
type/no-floating-promises Incorreto · Correto Proibir Promises soltas (não tratadas)
type/no-reactivity-loss Incorreto · Correto Proibir cópias estáticas simples de valores reativos em atribuições e chamadas
type/no-unsafe-template-binding Incorreto · Correto Proibir vinculações de template que resultam em tipos inseguros
type/require-typed-emits Incorreto · Correto Exigir uma definição de tipo para defineEmits
type/require-typed-props Incorreto · Correto Exigir uma definição de tipo para defineProps
type/strict-boolean-expressions Incorreto · Correto Exigir expressões booleanas seguras nas condições de script e template
vapor/no-inline-template Incorreto · Correto Proibir o atributo obsoleto inline-template
vapor/no-vue-lifecycle-events Incorreto · Correto Proibir eventos de ciclo de vida @vue:xxx por elemento (não suportados em Vapor)
vapor/prefer-static-class Incorreto · Correto Preferir class estática a uma vinculação dinâmica de class para literais de string
vapor/require-vapor-attribute Incorreto · Correto Sugerir a adição do atributo vapor a script setup
vize:croquis/cf/array-mutation Incorreto · Correto Um array é alterado por índice, o que um array reativo não rastreia.
vize:croquis/cf/async-boundary Incorreto · Correto O estado reativo atravessa um limite assíncrono e pode ser observado desatualizado.
vize:croquis/cf/async-no-suspense Incorreto · Correto Um componente assíncrono é renderizado sem um limite Suspense.
vize:croquis/cf/browser-api-ssr Incorreto · Correto Uma API exclusiva do navegador é usada onde o componente pode ser renderizado no servidor.
vize:croquis/cf/circular-dep Incorreto · Correto Os componentes importam uns aos outros em um ciclo.
vize:croquis/cf/circular-reactive-dependency Incorreto · Correto Os cálculos reativos dependem uns dos outros em um ciclo.
vize:croquis/cf/closure-captures-reactive Incorreto · Correto Um fechamento captura um valor reativo e não verá atualizações posteriores.
vize:croquis/cf/composable-outside-setup Incorreto · Correto Uma função de composição é chamada fora de setup.
vize:croquis/cf/computed-side-effects Incorreto · Correto Uma função de leitura computada escreve no estado ou produz outro efeito colateral.
vize:croquis/cf/deep-import Incorreto · Correto Uma cadeia de importações é mais profunda do que o projeto permite.
vize:croquis/cf/destructuring-breaks-reactivity Incorreto · Correto Desestruturar um objeto reativo copia os campos e perde o rastreamento.
vize:croquis/cf/di-outside-setup Incorreto · Correto provide ou inject é chamado fora de setup.
vize:croquis/cf/dom-access-without-next-tick Incorreto · Correto O DOM é lido antes de o Vue aplicar a atualização.
vize:croquis/cf/duplicate-id Incorreto · Correto O mesmo id de elemento é usado em mais de um componente.
vize:croquis/cf/event-listener-leak Incorreto · Correto Um ouvinte de eventos é registrado e nunca removido.
vize:croquis/cf/event-modifier Incorreto · Correto Um ouvinte de eventos usa um modificador que o evento emitido não suporta.
vize:croquis/cf/hydration-risk Incorreto · Correto Este código de diagnóstico agrupa várias ocorrências de reatividade, incluindo uma prop copiada para uma ref. Ele não implica que toda expressão Date.now() seja detectada pela passagem de análise entre arquivos.
vize:croquis/cf/inherit-attrs-unused Incorreto · Correto inheritAttrs: false está definido e o componente nunca lê os atributos.
vize:croquis/cf/inject-without-symbol Incorreto · Correto inject usa uma chave comum em vez de um símbolo InjectionKey.
vize:croquis/cf/injected-async-mutation-race Incorreto · Correto Um valor injetado é alterado por uma tarefa assíncrona sujeita a uma condição de corrida.
vize:croquis/cf/lifecycle-outside-setup Incorreto · Correto Um gancho de ciclo de vida é registrado fora de setup.
vize:croquis/cf/lifecycle-without-cleanup Incorreto · Correto Um gancho de ciclo de vida inicia um trabalho e nunca faz sua limpeza.
vize:croquis/cf/missing-required-prop Incorreto · Correto Uma prop obrigatória não é passada.
vize:croquis/cf/missing-suspense Incorreto · Correto Uma dependência assíncrona é usada fora de um limite Suspense.
vize:croquis/cf/module-scope-reactive Incorreto · Correto O estado reativo é criado no escopo do módulo e compartilhado por todos os chamadores.
vize:croquis/cf/multi-root-attrs Incorreto · Correto Um componente com múltiplas raízes recebe atributos e não tem onde colocá-los.
vize:croquis/cf/mutated-after-escape Incorreto · Correto Um objeto reativo é alterado depois de escapar de seu proprietário.
vize:croquis/cf/non-reactive-provide Incorreto · Correto Um valor fornecido não é reativo, portanto os descendentes não verão atualizações.
vize:croquis/cf/non-unique-id Incorreto · Correto Um id de elemento dentro de um laço não é único por item.
vize:croquis/cf/object-identity-comparison Incorreto · Correto Um objeto reativo é comparado por identidade, que muda ao remover os invólucros.
vize:croquis/cf/pinia-getter Incorreto · Correto Uma função de leitura do Pinia é lida sem storeToRefs, portanto não permanecerá reativa.
vize:croquis/cf/prop-type-mismatch Incorreto · Correto O valor de uma prop passada não corresponde ao tipo declarado.
vize:croquis/cf/provide-inject-type Incorreto · Correto Um valor fornecido e sua injeção não têm o mesmo tipo.
vize:croquis/cf/provide-without-symbol Incorreto · Correto provide usa uma chave comum em vez de um símbolo InjectionKey.
vize:croquis/cf/reactive-export Incorreto · Correto O estado reativo é exportado pelo módulo.
vize:croquis/cf/reactivity-outside-setup Incorreto · Correto Uma API reativa é chamada fora de setup.
vize:croquis/cf/reassignment-breaks-reactivity Incorreto · Correto Reatribuir uma variável reativa a substitui por um valor simples.
vize:croquis/cf/reference-escapes-scope Incorreto · Correto Uma referência reativa escapa do escopo responsável por seu ciclo de vida.
vize:croquis/cf/setup-context-violation Incorreto · Correto O contexto de setup é usado de uma forma que o Vue não permite.
vize:croquis/cf/shallow-deep-access Incorreto · Correto Uma propriedade profunda de um valor shallowReactive ou shallowRef é lida como se fosse rastreada.
vize:croquis/cf/spread-breaks-reactivity Incorreto · Correto Espalhar um objeto reativo copia seus valores e perde o rastreamento.
vize:croquis/cf/suspense-no-fallback Incorreto · Correto <Suspense> não tem conteúdo alternativo.
vize:croquis/cf/template-ref-timing Incorreto · Correto Uma ref de template é lida antes da montagem do componente.
vize:croquis/cf/toraw-mutation Incorreto · Correto toRaw é usado e o objeto bruto é alterado em seguida.
vize:croquis/cf/uncaught-error Incorreto · Correto Um componente pode lançar um erro e nenhum limite de erro o captura.
vize:croquis/cf/undeclared-emit Incorreto · Correto O componente emite um evento que não foi declarado.
vize:croquis/cf/undeclared-prop Incorreto · Correto Um pai passa uma prop que o filho não declara.
vize:croquis/cf/undefined-slot Incorreto · Correto Um pai preenche um slot que o filho não expõe.
vize:croquis/cf/unhandled-event Incorreto · Correto Um filho emite um evento que nenhum pai trata.
vize:croquis/cf/unmatched-inject Incorreto · Correto inject nomeia uma chave que nenhum ancestral fornece.
vize:croquis/cf/unmatched-listener Incorreto · Correto Um pai escuta um evento que o filho não emite.
vize:croquis/cf/unregistered-component Incorreto · Correto Um template usa um componente que não foi registrado nem importado.
vize:croquis/cf/unresolved-import Incorreto · Correto Uma importação não resolve para um módulo.
vize:croquis/cf/unused-attrs Incorreto · Correto Atributos de herança automática são passados para um componente com múltiplas raízes que não os usa.
vize:croquis/cf/unused-emit Incorreto · Correto Um evento declarado nunca é emitido.
vize:croquis/cf/unused-provide Incorreto · Correto Uma chave fornecida nunca é injetada.
vize:croquis/cf/value-extraction-breaks-reactivity Incorreto · Correto Ler um valor reativo para uma variável local perde as atualizações posteriores.
vize:croquis/cf/watch-can-be-computed Incorreto · Correto Um observador apenas copia um valor para o estado e pode ser um valor computado.
vize:croquis/cf/watcheffect-async Incorreto · Correto watchEffect inicia uma tarefa assíncrona e não consegue limpar a execução anterior.
vize:croquis/cf/watcher-outside-setup Incorreto · Correto watch ou watchEffect é chamado fora de setup.
vue/a11y-img-alt Incorreto · Correto Exigir o atributo alt nas imagens para garantir acessibilidade
vue/attribute-hyphenation Incorreto · Correto Aplicar um padrão de nomes de atributos em componentes personalizados
vue/attribute-order Incorreto · Correto Aplicar uma ordem consistente aos atributos
vue/component-definition-name-casing Incorreto · Correto Exigir PascalCase ou kebab-case nos nomes de definição de componentes
vue/component-name-in-template-casing Incorreto · Correto Aplicar um padrão específico de maiúsculas e minúsculas aos nomes de componentes nos templates
vue/cross-file-attrs-fallthrough Incorreto · Correto Um pai passa atributos para um filho resolvido cuja raiz não pode herdá-los e que não usa $attrs explicitamente.
vue/html-button-has-type Incorreto · Correto Exigir um type explícito e válido nos elementos button
vue/html-quotes Incorreto · Correto Aplicar um padrão de aspas aos atributos HTML
vue/html-self-closing Incorreto · Correto Aplicar um padrão de tags com fechamento automático
vue/max-template-complexity Incorreto · Correto Limitar a complexidade do próprio template de um componente, tanto ciclomática quanto cognitiva
vue/multi-word-component-names Incorreto · Correto Exigir nomes de componentes com mais de uma palavra
vue/mustache-interpolation-spacing Incorreto · Correto Aplicar espaçamento consistente dentro das interpolações com chaves duplas
vue/no-array-index-key Incorreto · Correto Proibir o uso direto da variável de índice de v-for como :key
vue/no-bare-strings-in-template Incorreto · Correto Proibir texto legível por pessoas diretamente no template quando ele deve ser internacionalizado
vue/no-boolean-attr-value Incorreto · Correto Proibir valores explícitos em atributos HTML booleanos
vue/no-child-content Incorreto · Correto Proibir conteúdo filho ao usar v-html ou v-text
vue/no-deprecated-filter Incorreto · Correto Proibir a sintaxe obsoleta de filtros do Vue 2 com o operador de barra vertical
vue/no-deprecated-functional-template Incorreto · Correto Proibir o atributo functional no <template> de um SFC
vue/no-deprecated-html-element-is Incorreto · Correto Proibir o atributo is em elementos HTML nativos
vue/no-deprecated-inline-template Incorreto · Correto Proibir o atributo obsoleto inline-template
vue/no-deprecated-router-link-tag-prop Incorreto · Correto Proibir a prop tag em <router-link>
vue/no-deprecated-scope-attribute Incorreto · Correto Proibir o atributo obsoleto scope em <template>
vue/no-deprecated-slot-attribute Incorreto · Correto Proibir o atributo obsoleto slot
vue/no-deprecated-slot-scope-attribute Incorreto · Correto Proibir o atributo obsoleto slot-scope
vue/no-deprecated-v-bind-sync Incorreto · Correto Proibir o modificador obsoleto .sync em v-bind
vue/no-deprecated-v-is Incorreto · Correto Proibir a diretiva obsoleta v-is
vue/no-deprecated-v-on-native-modifier Incorreto · Correto Proibir o modificador obsoleto .native em v-on
vue/no-deprecated-v-on-number-modifiers Incorreto · Correto Proibir modificadores numéricos obsoletos de keyCode em v-on
vue/no-dupe-v-else-if Incorreto · Correto Proibir condições duplicadas em cadeias de v-if / v-else-if
vue/no-duplicate-attributes Incorreto · Correto Proibir atributos duplicados no mesmo elemento
vue/no-empty-component-block Incorreto · Correto Proibir blocos vazios em SFCs
vue/no-inline-style Incorreto · Correto Desencorajar o uso de atributos de estilo inline
vue/no-invalid-html-attribute Incorreto · Correto Proibir valores estáticos inválidos para atributos HTML
vue/no-lone-template Incorreto · Correto Proibir elementos <template> desnecessários
vue/no-multi-spaces Incorreto · Correto Proibir vários espaços consecutivos
vue/no-multiple-objects-in-class Incorreto · Correto Proibir vários objetos literais dentro de uma vinculação de array em :class
vue/no-multiple-template-root Incorreto · Correto Proibir vários nós raiz em um template
vue/no-mutating-props Incorreto · Correto Proibir a mutação de props de componentes
vue/no-negated-v-if-condition Incorreto · Correto Proibir uma condição negada em v-if quando a cadeia tiver v-else
vue/no-non-component-keep-alive-child Incorreto · Correto Proibir invólucros de elementos comuns diretamente abaixo de <KeepAlive>
vue/no-preprocessor-lang Incorreto · Correto Desencorajar o uso de preprocessadores CSS em favor de CSS moderno
vue/no-reserved-component-names Incorreto · Correto Proibir o uso de nomes reservados como nomes de componentes
vue/no-root-v-if Incorreto · Correto Proibir v-if no único elemento raiz de um template
vue/no-script-non-standard-lang Incorreto · Correto Desencorajar valores não padronizados de lang em scripts
vue/no-src-attribute Incorreto · Correto Desencorajar o atributo src em blocos de SFCs
vue/no-static-inline-styles Incorreto · Correto Proibir atributos estáticos de estilo inline
vue/no-template-key Incorreto · Correto Proibir o atributo key em <template>
vue/no-template-lang Incorreto · Correto Desencorajar o atributo lang no bloco template
vue/no-template-shadow Incorreto · Correto Proibir nomes de variáveis que ocultam variáveis de um escopo externo
vue/no-template-target-blank Incorreto · Correto Proibir target="_blank" sem rel="noopener noreferrer"
vue/no-textarea-mustache Incorreto · Correto Proibir interpolação com chaves duplas em <textarea>
vue/no-undefined-refs Incorreto · Correto Proibir referências a variáveis não definidas nos templates
vue/no-unsafe-url Incorreto · Correto Alertar sobre vinculações de URL potencialmente inseguras
vue/no-unsandboxed-iframe Incorreto · Correto Exigir um atributo sandbox nos elementos iframe
vue/no-unused-components Incorreto · Correto Proibir o registro de componentes não usados nos templates
vue/no-unused-properties Incorreto · Correto Proibir propriedades não usadas definidas em defineProps
vue/no-unused-refs Incorreto · Correto Reportar refs de template (ref="x") nunca referenciadas em <script>
vue/no-unused-setup-bindings Incorreto · Correto Proibir variáveis de script setup que nunca são lidas
vue/no-unused-vars Incorreto · Correto Proibir definições de variáveis não usadas nas diretivas v-for e v-slot
vue/no-use-v-else-with-v-for Incorreto · Correto Proibir v-else-if ou v-else no mesmo elemento que v-for
vue/no-use-v-if-with-v-for Incorreto · Correto Proibir v-if no mesmo elemento que v-for
vue/no-useless-mustaches Incorreto · Correto Proibir interpolação com chaves duplas cuja expressão seja uma string literal constante
vue/no-useless-template-attributes Incorreto · Correto Proibir atributos sem efeito em elementos <template>
vue/no-useless-v-bind Incorreto · Correto Proibir um v-bind cujo valor seja uma string literal simples
vue/no-v-for-template-key-on-child Incorreto · Correto Proibir key no filho de um <template v-for>
vue/no-v-html Incorreto · Correto Alertar sobre v-html para prevenir vulnerabilidades XSS
vue/no-v-text Incorreto · Correto Proibir a diretiva v-text; preferir interpolação com chaves duplas
vue/no-v-text-v-html-on-component Incorreto · Correto Proibir v-text / v-html em elementos de componente
vue/permitted-contents Incorreto · Correto Aplicar as regras do modelo de conteúdo HTML
vue/prefer-props-shorthand Incorreto · Correto Recomendar sintaxe abreviada para props (Vue 3.4+)
vue/prefer-true-attribute-shorthand Incorreto · Correto Preferir a forma abreviada para um atributo booleano vinculado a true
vue/prop-name-casing Incorreto · Correto Aplicar um padrão de maiúsculas e minúsculas aos nomes de props declaradas
vue/require-component-is Incorreto · Correto Exigir v-bind:is em elementos <component>
vue/require-component-registration Incorreto · Correto Exigir importação ou registro explícito de componentes
vue/require-scoped-style Incorreto · Correto Exigir o atributo scoped nas tags style
vue/require-toggle-inside-transition Incorreto · Correto Exigir uma alternância no elemento envolvido por <transition>
vue/require-v-for-key Incorreto · Correto Exigir v-bind:key nas diretivas v-for
vue/scoped-event-names Incorreto · Correto Recomendar nomes de eventos com escopo no formato context:event
vue/sfc-element-order Incorreto · Correto Aplicar uma ordem consistente aos elementos de nível superior dos SFCs
vue/single-style-block Incorreto · Correto Recomendar um único bloco style
vue/slot-name-casing Incorreto · Correto Exigir kebab-case nos slots nomeados usados por v-slot
vue/this-in-template Incorreto · Correto Proibir this. nas expressões do template
vue/use-unique-element-ids Incorreto · Correto Exigir IDs de elementos únicos por meio de useId(), em vez de literais estáticos
vue/use-v-on-exact Incorreto · Correto Exigir o modificador .exact em v-on quando houver manipuladores baseados em modificadores
vue/v-bind-style Incorreto · Correto Aplicar um padrão de sintaxe à diretiva v-bind
vue/v-on-event-hyphenation Incorreto · Correto Exigir hífens nos nomes de eventos personalizados em v-on de componentes
vue/v-on-handler-style Incorreto · Correto Exigir manipuladores de v-on escritos como referência a método ou função inline
vue/v-on-style Incorreto · Correto Aplicar um padrão de sintaxe à diretiva v-on
vue/v-slot-style Incorreto · Correto Aplicar um padrão de sintaxe à diretiva v-slot
vue/valid-attribute-name Incorreto · Correto Exigir nomes de atributos válidos
vue/valid-template-root Incorreto · Correto Exigir uma raiz <template> válida para a semântica de fragmentos do Vue 3
vue/valid-v-bind Incorreto · Correto Exigir diretivas v-bind válidas
vue/valid-v-cloak Incorreto · Correto Exigir diretivas v-cloak válidas
vue/valid-v-else Incorreto · Correto Exigir diretivas v-else válidas
vue/valid-v-else-if Incorreto · Correto Exigir diretivas v-else-if válidas
vue/valid-v-for Incorreto · Correto Exigir diretivas v-for válidas
vue/valid-v-html Incorreto · Correto Exigir diretivas v-html válidas
vue/valid-v-if Incorreto · Correto Exigir diretivas v-if válidas
vue/valid-v-is Incorreto · Correto Exigir diretivas v-is válidas
vue/valid-v-memo Incorreto · Correto Exigir diretivas v-memo válidas
vue/valid-v-model Incorreto · Correto Exigir diretivas v-model válidas
vue/valid-v-on Incorreto · Correto Exigir diretivas v-on válidas
vue/valid-v-once Incorreto · Correto Exigir diretivas v-once válidas
vue/valid-v-pre Incorreto · Correto Exigir diretivas v-pre válidas
vue/valid-v-show Incorreto · Correto Exigir diretivas v-show válidas
vue/valid-v-slot Incorreto · Correto Exigir diretivas v-slot válidas
vue/valid-v-text Incorreto · Correto Exigir diretivas v-text válidas
vue/warn-custom-block Incorreto · Correto Alertar sobre blocos personalizados em arquivos SFC
vue/warn-custom-directive Incorreto · Correto Alertar sobre diretivas personalizadas que precisam de registro

Todas as regras · Opções das regras · Mapa de migração do ESLint · Verificações do projeto · Atributos entre componentes

a11y/alt-text

Exigir texto alternativo para elementos de mídia

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/anchor-has-content

Exigir conteúdo acessível nos elementos de âncora

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/anchor-is-valid

Exigir um href válido nos elementos de âncora

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/aria-props

Proibir atributos ARIA inválidos

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/aria-role

Exigir que elementos com papéis ARIA usem um papel ARIA válido e não abstrato

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/aria-unsupported-elements

Proibir atributos ARIA em elementos que não os aceitam

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/click-events-have-key-events

Exigir manipuladores de eventos de teclado junto aos eventos de clique

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/form-control-has-label

Exigir rótulos associados aos controles de formulário

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/heading-has-content

Exigir conteúdo acessível nos elementos de título

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/heading-levels

Proibir que níveis de título sejam pulados

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/iframe-has-title

Exigir um atributo title nos elementos iframe

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/img-alt

Exigir o atributo alt nas imagens para garantir acessibilidade

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/interactive-supports-focus

Exigir que elementos com papéis interativos possam receber foco

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/label-has-for

Exigir controles de formulário associados aos rótulos

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/landmark-roles

Validar a posição e a unicidade dos papéis de regiões de referência

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/media-has-caption

Exigir legendas nos elementos de mídia

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/mouse-events-have-key-events

Exigir eventos de foco e perda de foco junto aos eventos de mouse

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-access-key

Proibir o uso do atributo accesskey

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-aria-hidden-on-focusable

Proibir aria-hidden="true" em elementos que podem receber foco

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-autofocus

Proibir o uso do atributo autofocus

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-distracting-elements

Proibir elementos que causam distração, como <marquee> e <blink>

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-i-for-icon

Proibir o uso do elemento <i> para ícones

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-redundant-roles

Proibir papéis ARIA redundantes

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir referências a IDs inexistentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-role-presentation-on-focusable

Proibir role="presentation" ou role="none" em elementos que podem receber foco

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/no-static-element-interactions

Proibir manipuladores de eventos em elementos estáticos

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/placeholder-label-option

Exigir uma opção de orientação em um select required

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/role-has-required-aria-props

Exigir as propriedades obrigatórias dos papéis ARIA

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/tabindex-no-positive

Proibir valores positivos de tabindex

Incorreto

Correto

Exemplos do grupo · Referência da regra

a11y/use-list

Sugerir elementos de lista para textos que parecem itens de lista

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/no-display-none

Sugerir v-show em vez de display: none

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/no-hardcoded-values

Sugerir variáveis CSS em vez de valores fixos escritos diretamente

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/no-id-selectors

Desencorajar o uso de seletores de ID no CSS

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/no-important

Desencorajar o uso de !important no CSS

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/no-utility-classes

Alertar sobre a implementação de classes utilitárias nos estilos de componentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/no-v-bind-performance

Alertar sobre o custo de desempenho do v-bind() no CSS

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/prefer-logical-properties

Recomendar propriedades lógicas de CSS para melhorar o suporte à internacionalização

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/prefer-nested-selectors

Recomendar o aninhamento de CSS para seletores de descendentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/prefer-slotted

Recomendar ::v-slotted() para estilizar o conteúdo de slots

Incorreto

Correto

Exemplos do grupo · Referência da regra

css/require-font-display

Exigir font-display nas regras @font-face

Incorreto

Correto

Exemplos do grupo · Referência da regra

Preferir NuxtLink para links internos da aplicação

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/pinia-prefer-store-to-refs

Preferir storeToRefs() ao desestruturar stores do Pinia

Incorreto

Correto

Exemplos do grupo · Referência da regra

Exigir um destino to nos componentes RouterLink e NuxtLink

Incorreto

Correto

Exemplos do grupo · Referência da regra

Exigir href nos componentes Link do Void Vue

Incorreto

Correto

Exemplos do grupo · Referência da regra

Validar props method estáticas do Link do Void Vue

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/vue-i18n-no-missing-key

Relatar chaves estáticas do vue-i18n ausentes nas mensagens locais do SFC

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/vue-router-extra-param

A rota não declara tab; o Vue Router o descarta.

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/vue-router-missing-param

O parâmetro obrigatório postId está ausente; depender da rota atual é frágil.

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/vue-router-param-type

postId não é repetível, portanto um array é inválido.

Incorreto

Correto

Exemplos do grupo · Referência da regra

Preferir objetos de rotas nomeadas a strings de caminho estáticas no RouterLink

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/vue-router-prefer-named-push

Preferir objetos de rotas nomeadas para navegação programática com Vue Router

Incorreto

Correto

Exemplos do grupo · Referência da regra

ecosystem/vue-router-unknown-route

O nome está ausente do roteador completo instalado.

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Evitar snapshots de wrapper.html() nos testes com Vue Test Utils

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/cross-component-nesting

Verificar o aninhamento HTML real após compor os componentes importados.

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/deprecated-attr

Proibir atributos HTML obsoletos

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/deprecated-element

Proibir elementos HTML obsoletos

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/id-duplication

Proibir IDs de elementos duplicados

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/no-consecutive-br

Proibir elementos <br> consecutivos

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/no-dupe-style-properties

Proibir propriedades duplicadas em atributos de estilo em linha

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/no-duplicate-class

Proibir nomes de classe duplicados em um atributo class estático

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/no-duplicate-dt

Proibir nomes <dt> duplicados em <dl>

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/no-empty-palpable-content

Proibir elementos vazios que esperam conteúdo visível

Incorreto

Correto

Exemplos do grupo · Referência da regra

html/require-datetime

Exigir o atributo datetime no elemento <time>

Incorreto

Correto

Exemplos do grupo · Referência da regra

musea/no-empty-variant

Proibir blocos <variant> vazios

Incorreto

Correto

Exemplos do grupo · Referência da regra

musea/prefer-design-tokens

Preferir variáveis CSS de tokens de design a valores primitivos fixos escritos diretamente

Incorreto

Correto

Exemplos do grupo · Referência da regra

musea/require-component

Exigir o atributo component no bloco <art>

Incorreto

Correto

Exemplos do grupo · Referência da regra

musea/require-title

Exigir o atributo title no bloco <art>

Incorreto

Correto

Exemplos do grupo · Referência da regra

musea/unique-variant-names

Exigir nomes de variante únicos

Incorreto

Correto

Exemplos do grupo · Referência da regra

musea/valid-variant

Exigir o atributo name nos blocos <variant>

Incorreto

Correto

Exemplos do grupo · Referência da regra

nuxt/no-nuxt-config-test-key

Proibir a definição da chave test na configuração do Nuxt

Incorreto

Correto

Exemplos do grupo · Referência da regra

nuxt/no-page-meta-runtime-values

Proibir valores do contexto de execução no nível de avaliação imediata de definePageMeta, que é extraído para um fragmento separado durante a compilação e executado antes do setup do componente

Incorreto

Correto

Exemplos do grupo · Referência da regra

nuxt/nuxt-config-keys-order

Preferir a ordem recomendada das propriedades de configuração do Nuxt

Incorreto

Correto

Exemplos do grupo · Referência da regra

nuxt/prefer-import-meta

Preferir import.meta.* a process.*

Incorreto

Correto

Exemplos do grupo · Referência da regra

petite-vue/no-unsupported-directive

Proibir diretivas que o petite-vue não aceita

Incorreto

Correto

Exemplos do grupo · Referência da regra

petite-vue/valid-v-effect

Exigir uma expressão não vazia em v-effect

Incorreto

Correto

Exemplos do grupo · Referência da regra

petite-vue/valid-v-scope

Exigir que v-scope vincule um objeto literal

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/component-options-name-casing

Exigir PascalCase na opção name do componente

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/custom-event-name-casing

Exigir camelCase nos nomes de eventos personalizados emitidos

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/define-emits-declaration

Exigir a forma de defineEmits<{}>() baseada em tipos em vez da forma em tempo de execução ou de array

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/define-macros-order

Exigir uma ordem consistente para as macros do compilador Vue em <script setup>

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/define-props-declaration

Exigir defineProps<{ ... }>() baseado em tipos em vez da forma com objeto em tempo de execução

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/define-props-destructuring

Exigir um estilo consistente de desestruturação de defineProps em <script setup>

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-arrow-functions-in-watch

Proibir funções de seta como manipuladores de watch na Options API

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-async-in-computed

Proibir funções assíncronas em propriedades computadas

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-boolean-default

Proibir um valor padrão em uma prop Boolean

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deep-destructure-in-props

Proibir desestruturação profundamente aninhada em defineProps

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deprecated-data-object-declaration

Proibir um literal de objeto como opção data do componente (o Vue 3 exige uma função)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deprecated-destroyed-lifecycle

Proibir os hooks de ciclo de vida obsoletos destroyed e beforeDestroy

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deprecated-dollar-listeners-api

Proibir a propriedade de instância $listeners removida no Vue 3 (incorporada a $attrs)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deprecated-dollar-scopedslots-api

Proibir a propriedade de instância $scopedSlots removida no Vue 3 (usar $slots)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deprecated-events-api

Proibir a API de eventos do Vue 2 removida ($on / $off / $once)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-deprecated-props-default-this

Proibir this dentro de uma função de valor padrão ou validação de prop (removido no Vue 3)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-dupe-keys

Proibir chaves duplicadas entre props/data/computed/methods/setup/inject da Options API

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-duplicate-attr-inheritance

Sinalizar um componente que aplica duas vezes seus atributos repassados

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-export-in-script-setup

Proibir instruções export dentro de <script setup>

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-expose-after-await

Proibir expose() e defineExpose() após um await

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-get-current-instance

Proibir getCurrentInstance() no modo Vapor (retorna null)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-import-compiler-macros

Proibir a importação de macros do compilador Vue que são importadas automaticamente

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-internal-imports

Proibir importações de módulos internos do Vue

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-lifecycle-after-await

Proibir hooks de ciclo de vida registrados após um await em setup()

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-multiple-slot-args

Proibir passar mais de um argumento a uma chamada de função de slot com escopo

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-next-tick

Proibir o uso de nextTick() em componentes orientados a Vapor

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-options-api

Proibir padrões da Options API no modo Vapor

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-potential-component-option-typo

Sinalizar prováveis erros de digitação nos nomes de opções de componentes da Options API

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-reactive-destructure

Proibir a desestruturação de objetos reativos que causa perda de reatividade

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-ref-as-operand

Exigir que variáveis vinculadas a refs sejam acessadas por .value quando usadas como operandos

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-required-prop-with-default

Proibir uma prop que tenha required: true e também um valor padrão

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-reserved-identifiers

Proibir o uso de identificadores reservados pelo compilador Vue

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-reserved-keys

Proibir nomes reservados pelo Vue como chaves de props/data/computed/methods/setup/inject na Options API

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-reserved-props

Proibir nomes reservados na declaração de props de um componente

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-restricted-globals

Proibir referências a variáveis globais do ambiente de execução que devem passar por um encapsulamento tipado

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-restricted-members

Proibir acessos a membros object.property configurados pelo projeto

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir efeitos colaterais em getters computados da Options API

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir ref/reactive no nível superior para evitar contaminação de estado entre requisições

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-unstable-nested-components

Proibir definições de componentes dentro de funções de setup ou renderização

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-unused-emit-declarations

Sinalizar eventos declarados que nunca são emitidos

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir chamar uma propriedade computada da Options API como um método

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-watch-after-await

Proibir watchers registrados após um await em setup() sem guardar a função de parada

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/no-with-defaults

Desencorajar withDefaults em favor de valores padrão na desestruturação (Vue 3.5+)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-computed

Preferir computed() para estado reativo derivado

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-define-options

Preferir defineOptions() a um <script> comum que só define name/inheritAttrs

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-import-from-vue

Preferir importar de 'vue' em vez de pacotes internos

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-ref-over-reactive

Recomendar o uso de ref() em vez de reactive() para gerenciar estado

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-use-attrs

Recomendar o uso de useAttrs() em vez de context.attrs

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-use-id

Recomendar o uso de useId() para gerar IDs únicos (Vue 3.5+)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-use-slots

Recomendar o uso de useSlots() em vez de context.slots

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/prefer-use-template-ref

Recomendar useTemplateRef em vez de ref para referências de template (Vue 3.5+)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-default-prop

Exigir um valor padrão para toda prop opcional que não seja Boolean

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-explicit-emits

Exigir que os eventos emitidos sejam declarados em defineEmits ou na opção emits

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-explicit-slots

Exigir que os slots consumidos por useSlots() sejam tipados explicitamente com defineSlots<...>()

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-function-return-type

Exigir anotações de tipo de retorno nas funções

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-prop-type-constructor

Exigir que os valores de type de props sejam construtores em vez de literais de string

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-prop-types

Exigir que toda prop declare um tipo

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-symbol-provide

Recomendar o uso de Symbol como chave de injeção para provide/inject

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-typed-object-prop

Exigir um tipo explícito em uma prop cujo tipo de tempo de execução seja Object ou Array

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-typed-ref

Exigir um argumento de tipo explícito em um ref() inicializado sem valor, com null ou com undefined

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/require-valid-default-prop

Exigir que o valor padrão de uma prop seja válido para seu tipo declarado

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/return-in-computed-property

Exigir um valor de retorno em todo getter computado

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/return-in-emits-validator

Exigir um valor de retorno em todo validador de emits da Options API

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/valid-define-emits

Exigir uso válido de defineEmits() (sem argumentos de tipo e de tempo de execução juntos, sem referências locais, uma única chamada)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/valid-define-options

Exigir uso válido de defineOptions() (um único argumento de objeto, sem props/emits/expose/slots)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/valid-define-props

Exigir uso válido de defineProps() (uma única chamada, sem argumentos de tipo e de tempo de execução juntos, sem referências locais)

Incorreto

Correto

Exemplos do grupo · Referência da regra

script/valid-next-tick

Exigir que o resultado de uma chamada de nextTick() seja aguardado, encadeado ou receba uma função de retorno

Incorreto

Correto

Exemplos do grupo · Referência da regra

ssr/no-browser-globals-in-ssr

Proibir variáveis globais exclusivas do navegador no contexto de SSR

Incorreto

Correto

Exemplos do grupo · Referência da regra

ssr/no-hydration-mismatch

Proibir valores não determinísticos que causam divergências na hidratação

Incorreto

Correto

Exemplos do grupo · Referência da regra

type/no-floating-promises

Proibir Promises soltas (não tratadas)

Incorreto

Correto

Exemplos do grupo · Referência da regra

type/no-reactivity-loss

Proibir cópias estáticas simples de valores reativos em atribuições e chamadas

Incorreto

Correto

Exemplos do grupo · Referência da regra

type/no-unsafe-template-binding

Proibir vinculações de template que resultam em tipos inseguros

Incorreto

Correto

Exemplos do grupo · Referência da regra

type/require-typed-emits

Exigir uma definição de tipo para defineEmits

Incorreto

Correto

Exemplos do grupo · Referência da regra

type/require-typed-props

Exigir uma definição de tipo para defineProps

Incorreto

Correto

Exemplos do grupo · Referência da regra

type/strict-boolean-expressions

Exigir expressões booleanas seguras nas condições de script e template

Incorreto

Correto

Exemplos do grupo · Referência da regra

vapor/no-inline-template

Proibir o atributo obsoleto inline-template

Incorreto

Correto

Exemplos do grupo · Referência da regra

vapor/no-vue-lifecycle-events

Proibir eventos de ciclo de vida @vue:xxx por elemento (não suportados em Vapor)

Incorreto

Correto

Exemplos do grupo · Referência da regra

vapor/prefer-static-class

Preferir class estática a uma vinculação dinâmica de class para literais de string

Incorreto

Correto

Exemplos do grupo · Referência da regra

vapor/require-vapor-attribute

Sugerir a adição do atributo vapor a script setup

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/array-mutation

Um array é alterado por índice, o que um array reativo não rastreia.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/async-boundary

O estado reativo atravessa um limite assíncrono e pode ser observado desatualizado.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/async-no-suspense

Um componente assíncrono é renderizado sem um limite Suspense.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/browser-api-ssr

Uma API exclusiva do navegador é usada onde o componente pode ser renderizado no servidor.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/circular-dep

Os componentes importam uns aos outros em um ciclo.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/circular-reactive-dependency

Os cálculos reativos dependem uns dos outros em um ciclo.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/closure-captures-reactive

Um fechamento captura um valor reativo e não verá atualizações posteriores.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/composable-outside-setup

Uma função de composição é chamada fora de setup.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/computed-side-effects

Uma função de leitura computada escreve no estado ou produz outro efeito colateral.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/deep-import

Uma cadeia de importações é mais profunda do que o projeto permite.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/destructuring-breaks-reactivity

Desestruturar um objeto reativo copia os campos e perde o rastreamento.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/di-outside-setup

provide ou inject é chamado fora de setup.

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

O DOM é lido antes de o Vue aplicar a atualização.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/duplicate-id

O mesmo id de elemento é usado em mais de um componente.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/event-listener-leak

Um ouvinte de eventos é registrado e nunca removido.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/event-modifier

Um ouvinte de eventos usa um modificador que o evento emitido não suporta.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/hydration-risk

Este código de diagnóstico agrupa várias ocorrências de reatividade, incluindo uma prop copiada para uma ref. Ele não implica que toda expressão Date.now() seja detectada pela passagem de análise entre arquivos.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/inherit-attrs-unused

inheritAttrs: false está definido e o componente nunca lê os atributos.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/inject-without-symbol

inject usa uma chave comum em vez de um símbolo InjectionKey.

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Um valor injetado é alterado por uma tarefa assíncrona sujeita a uma condição de corrida.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/lifecycle-outside-setup

Um gancho de ciclo de vida é registrado fora de setup.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/lifecycle-without-cleanup

Um gancho de ciclo de vida inicia um trabalho e nunca faz sua limpeza.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/missing-required-prop

Uma prop obrigatória não é passada.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/missing-suspense

Uma dependência assíncrona é usada fora de um limite Suspense.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/module-scope-reactive

O estado reativo é criado no escopo do módulo e compartilhado por todos os chamadores.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/multi-root-attrs

Um componente com múltiplas raízes recebe atributos e não tem onde colocá-los.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/mutated-after-escape

Um objeto reativo é alterado depois de escapar de seu proprietário.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/non-reactive-provide

Um valor fornecido não é reativo, portanto os descendentes não verão atualizações.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/non-unique-id

Um id de elemento dentro de um laço não é único por item.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/object-identity-comparison

Um objeto reativo é comparado por identidade, que muda ao remover os invólucros.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/pinia-getter

Uma função de leitura do Pinia é lida sem storeToRefs, portanto não permanecerá reativa.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/prop-type-mismatch

O valor de uma prop passada não corresponde ao tipo declarado.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/provide-inject-type

Um valor fornecido e sua injeção não têm o mesmo tipo.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/provide-without-symbol

provide usa uma chave comum em vez de um símbolo InjectionKey.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/reactive-export

O estado reativo é exportado pelo módulo.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/reactivity-outside-setup

Uma API reativa é chamada fora de setup.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/reassignment-breaks-reactivity

Reatribuir uma variável reativa a substitui por um valor simples.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/reference-escapes-scope

Uma referência reativa escapa do escopo responsável por seu ciclo de vida.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/setup-context-violation

O contexto de setup é usado de uma forma que o Vue não permite.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/shallow-deep-access

Uma propriedade profunda de um valor shallowReactive ou shallowRef é lida como se fosse rastreada.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/spread-breaks-reactivity

Espalhar um objeto reativo copia seus valores e perde o rastreamento.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/suspense-no-fallback

<Suspense> não tem conteúdo alternativo.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/template-ref-timing

Uma ref de template é lida antes da montagem do componente.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/toraw-mutation

toRaw é usado e o objeto bruto é alterado em seguida.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/uncaught-error

Um componente pode lançar um erro e nenhum limite de erro o captura.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/undeclared-emit

O componente emite um evento que não foi declarado.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/undeclared-prop

Um pai passa uma prop que o filho não declara.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/undefined-slot

Um pai preenche um slot que o filho não expõe.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unhandled-event

Um filho emite um evento que nenhum pai trata.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unmatched-inject

inject nomeia uma chave que nenhum ancestral fornece.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unmatched-listener

Um pai escuta um evento que o filho não emite.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unregistered-component

Um template usa um componente que não foi registrado nem importado.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unresolved-import

Uma importação não resolve para um módulo.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unused-attrs

Atributos de herança automática são passados para um componente com múltiplas raízes que não os usa.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unused-emit

Um evento declarado nunca é emitido.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/unused-provide

Uma chave fornecida nunca é injetada.

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Ler um valor reativo para uma variável local perde as atualizações posteriores.

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Um observador apenas copia um valor para o estado e pode ser um valor computado.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/watcheffect-async

watchEffect inicia uma tarefa assíncrona e não consegue limpar a execução anterior.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vize:croquis/cf/watcher-outside-setup

watch ou watchEffect é chamado fora de setup.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/a11y-img-alt

Exigir o atributo alt nas imagens para garantir acessibilidade

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/attribute-hyphenation

Aplicar um padrão de nomes de atributos em componentes personalizados

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/attribute-order

Aplicar uma ordem consistente aos atributos

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/component-definition-name-casing

Exigir PascalCase ou kebab-case nos nomes de definição de componentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/component-name-in-template-casing

Aplicar um padrão específico de maiúsculas e minúsculas aos nomes de componentes nos templates

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/cross-file-attrs-fallthrough

Um pai passa atributos para um filho resolvido cuja raiz não pode herdá-los e que não usa $attrs explicitamente.

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/html-button-has-type

Exigir um type explícito e válido nos elementos button

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/html-quotes

Aplicar um padrão de aspas aos atributos HTML

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/html-self-closing

Aplicar um padrão de tags com fechamento automático

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/max-template-complexity

Limitar a complexidade do próprio template de um componente, tanto ciclomática quanto cognitiva

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/multi-word-component-names

Exigir nomes de componentes com mais de uma palavra

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/mustache-interpolation-spacing

Aplicar espaçamento consistente dentro das interpolações com chaves duplas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-array-index-key

Proibir o uso direto da variável de índice de v-for como :key

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-bare-strings-in-template

Proibir texto legível por pessoas diretamente no template quando ele deve ser internacionalizado

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-boolean-attr-value

Proibir valores explícitos em atributos HTML booleanos

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-child-content

Proibir conteúdo filho ao usar v-html ou v-text

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-filter

Proibir a sintaxe obsoleta de filtros do Vue 2 com o operador de barra vertical

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-functional-template

Proibir o atributo functional no <template> de um SFC

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-html-element-is

Proibir o atributo is em elementos HTML nativos

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-inline-template

Proibir o atributo obsoleto inline-template

Incorreto

Correto

Exemplos do grupo · Referência da regra

Proibir a prop tag em <router-link>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-scope-attribute

Proibir o atributo obsoleto scope em <template>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-slot-attribute

Proibir o atributo obsoleto slot

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-slot-scope-attribute

Proibir o atributo obsoleto slot-scope

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-v-bind-sync

Proibir o modificador obsoleto .sync em v-bind

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-deprecated-v-is

Proibir a diretiva obsoleta v-is

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir o modificador obsoleto .native em v-on

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir modificadores numéricos obsoletos de keyCode em v-on

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-dupe-v-else-if

Proibir condições duplicadas em cadeias de v-if / v-else-if

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-duplicate-attributes

Proibir atributos duplicados no mesmo elemento

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-empty-component-block

Proibir blocos vazios em SFCs

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-inline-style

Desencorajar o uso de atributos de estilo inline

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-invalid-html-attribute

Proibir valores estáticos inválidos para atributos HTML

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-lone-template

Proibir elementos <template> desnecessários

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-multi-spaces

Proibir vários espaços consecutivos

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-multiple-objects-in-class

Proibir vários objetos literais dentro de uma vinculação de array em :class

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-multiple-template-root

Proibir vários nós raiz em um template

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-mutating-props

Proibir a mutação de props de componentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-negated-v-if-condition

Proibir uma condição negada em v-if quando a cadeia tiver v-else

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir invólucros de elementos comuns diretamente abaixo de <KeepAlive>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-preprocessor-lang

Desencorajar o uso de preprocessadores CSS em favor de CSS moderno

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-reserved-component-names

Proibir o uso de nomes reservados como nomes de componentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-root-v-if

Proibir v-if no único elemento raiz de um template

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-script-non-standard-lang

Desencorajar valores não padronizados de lang em scripts

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-src-attribute

Desencorajar o atributo src em blocos de SFCs

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-static-inline-styles

Proibir atributos estáticos de estilo inline

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-template-key

Proibir o atributo key em <template>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-template-lang

Desencorajar o atributo lang no bloco template

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-template-shadow

Proibir nomes de variáveis que ocultam variáveis de um escopo externo

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-template-target-blank

Proibir target="_blank" sem rel="noopener noreferrer"

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-textarea-mustache

Proibir interpolação com chaves duplas em <textarea>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-undefined-refs

Proibir referências a variáveis não definidas nos templates

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unsafe-url

Alertar sobre vinculações de URL potencialmente inseguras

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unsandboxed-iframe

Exigir um atributo sandbox nos elementos iframe

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unused-components

Proibir o registro de componentes não usados nos templates

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unused-properties

Proibir propriedades não usadas definidas em defineProps

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unused-refs

Reportar refs de template (ref="x") nunca referenciadas em <script>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unused-setup-bindings

Proibir variáveis de script setup que nunca são lidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-unused-vars

Proibir definições de variáveis não usadas nas diretivas v-for e v-slot

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir v-else-if ou v-else no mesmo elemento que v-for

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir v-if no mesmo elemento que v-for

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-useless-mustaches

Proibir interpolação com chaves duplas cuja expressão seja uma string literal constante

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-useless-template-attributes

Proibir atributos sem efeito em elementos <template>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-useless-v-bind

Proibir um v-bind cujo valor seja uma string literal simples

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir key no filho de um <template v-for>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-v-html

Alertar sobre v-html para prevenir vulnerabilidades XSS

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/no-v-text

Proibir a diretiva v-text; preferir interpolação com chaves duplas

Incorreto

Correto

Exemplos do grupo · Referência da regra

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

Proibir v-text / v-html em elementos de componente

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/permitted-contents

Aplicar as regras do modelo de conteúdo HTML

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/prefer-props-shorthand

Recomendar sintaxe abreviada para props (Vue 3.4+)

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/prefer-true-attribute-shorthand

Preferir a forma abreviada para um atributo booleano vinculado a true

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/prop-name-casing

Aplicar um padrão de maiúsculas e minúsculas aos nomes de props declaradas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/require-component-is

Exigir v-bind:is em elementos <component>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/require-component-registration

Exigir importação ou registro explícito de componentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/require-scoped-style

Exigir o atributo scoped nas tags style

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/require-toggle-inside-transition

Exigir uma alternância no elemento envolvido por <transition>

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/require-v-for-key

Exigir v-bind:key nas diretivas v-for

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/scoped-event-names

Recomendar nomes de eventos com escopo no formato context:event

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/sfc-element-order

Aplicar uma ordem consistente aos elementos de nível superior dos SFCs

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/single-style-block

Recomendar um único bloco style

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/slot-name-casing

Exigir kebab-case nos slots nomeados usados por v-slot

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/this-in-template

Proibir this. nas expressões do template

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/use-unique-element-ids

Exigir IDs de elementos únicos por meio de useId(), em vez de literais estáticos

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/use-v-on-exact

Exigir o modificador .exact em v-on quando houver manipuladores baseados em modificadores

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/v-bind-style

Aplicar um padrão de sintaxe à diretiva v-bind

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/v-on-event-hyphenation

Exigir hífens nos nomes de eventos personalizados em v-on de componentes

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/v-on-handler-style

Exigir manipuladores de v-on escritos como referência a método ou função inline

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/v-on-style

Aplicar um padrão de sintaxe à diretiva v-on

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/v-slot-style

Aplicar um padrão de sintaxe à diretiva v-slot

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-attribute-name

Exigir nomes de atributos válidos

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-template-root

Exigir uma raiz <template> válida para a semântica de fragmentos do Vue 3

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-bind

Exigir diretivas v-bind válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-cloak

Exigir diretivas v-cloak válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-else

Exigir diretivas v-else válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-else-if

Exigir diretivas v-else-if válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-for

Exigir diretivas v-for válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-html

Exigir diretivas v-html válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-if

Exigir diretivas v-if válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-is

Exigir diretivas v-is válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-memo

Exigir diretivas v-memo válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-model

Exigir diretivas v-model válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-on

Exigir diretivas v-on válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-once

Exigir diretivas v-once válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-pre

Exigir diretivas v-pre válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-show

Exigir diretivas v-show válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-slot

Exigir diretivas v-slot válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/valid-v-text

Exigir diretivas v-text válidas

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/warn-custom-block

Alertar sobre blocos personalizados em arquivos SFC

Incorreto

Correto

Exemplos do grupo · Referência da regra

vue/warn-custom-directive

Alertar sobre diretivas personalizadas que precisam de registro

Incorreto

Correto

Exemplos do grupo · Referência da regra