$attrs Coleção $attrs
Última atualização: 2026-10-22
$attrs Coleção $attrs
$attrs reúne os atributos que o pai passou e que props não declarou — encaminhe-os com precisão usando inheritAttrs: false.
| Grupo | Opções: Composição e Diversos |
|---|---|
| Tipo | Opção |
| Escopo | No Componente |
| Versão do Vue | 3.0+ |
| Suporte a SSR | Sim |
📝 Sintaxe
export default {
inheritAttrs: false,
template: "<input v-bind=\"$attrs\">"
}
⚙️ Argumentos
| value | Sem argumentos; inclui class, style e listeners |
|---|
Retorno:Um objeto somente leitura
▶ Exemplo
Edite o código abaixo e veja o resultado ao vivo:
Saída:
The input carries placeholder and type; the label reads 'Email'.
💡 Pontos-chave
⚠️ Aviso $attrs é somente leitura — escritas geram aviso e não fazem nada.
ℹ️ Nota Inclui listeners, então v-bind="$attrs" encaminha eventos também.
💡 Dica O equivalente na Composition API é useAttrs().
🏷️ Composição e Diversos relacionados
💡 Casos Relacionados
Mais casos em breve.
📚 Tutoriais Relacionados
❓ FAQ
P Como dividir com props?
R Props declaradas vão para props; todo o resto cai aqui.
P class e style estão incluídos?
R Sim, e eles são mesclados em vez de substituídos.
P Por que atributos às vezes desaparecem?
R Templates multi-raiz sem um bind manual os descartam.