v-model Vínculo Bidirecional em Formulários

Última atualização: 2026-10-22

v-model Vínculo Bidirecional em Formulários

O v-model cria vínculo bidirecional entre o controle de formulário e os dados: digitar atualiza o estado, e mudanças no estado repovoam o controle.

GrupoDiretivas
TipoDiretiva
EscopoTemplate
Versão do Vue3.0+
Suporte a SSRSim

📝 Sintaxe

<input v-model="name">
<textarea v-model="desc"></textarea>
<input type="checkbox" v-model="agree">
<select v-model="city"><option>São Paulo</option></select>

⚙️ Argumentos

expressionA propriedade de estado a vincular; os modificadores .lazy, .number e .trim ajustam a sincronização

Retorno:Diretiva, sem valor de retorno

▶ Exemplo

Edite o código abaixo e veja o resultado ao vivo:

Saída:

Typing in the input updates the greeting in real time.

💡 Pontos-chave

💡 Dica O modificador .number converte para número automaticamente — indispensável em cálculos numéricos.
ℹ️ Nota Checkbox vinculado a um array coleta múltiplos valores; vinculado a um booleano, funciona como um único interruptor.
⚠️ Aviso O v-model é açúcar sintático de :value + @input; em componentes customizados, é definido via modelValue ou defineModel().
Mais casos em breve.

📚 Tutoriais Relacionados

❓ FAQ

P O valor vinculado é número ou string?
R Strings por padrão — adicione .number, especialmente em inputs numéricos.
P Como o v-model funciona em um componente customizado?
R Declare o prop modelValue + o evento update:modelValue (ou use defineModel() a partir do 3.4).
P Vários inputs podem vincular o mesmo estado?
R Sim — todos ficam sincronizados; editar um atualiza os outros imediatamente.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%