useTemplateRef() Obter referência de template (forma recomendada do 3.5+)

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

useTemplateRef() Obter referência de template (forma recomendada do 3.5+)

useTemplateRef() obtém a referência de template da propriedade ref de mesmo nome por chave de string, eliminando o código repetitivo de declarar uma variável com o mesmo nome.

GrupoTemplate e Auxiliares
TipoAPI
EscopoNo Componente
Versão do Vue3.5+
Suporte a SSRSim

📝 Sintaxe

const inputEl = useTemplateRef('my-input')

// template: <input ref="my-input">

⚙️ Argumentos

keyString igual ao valor do atributo ref do template

Retorno:Um ref somente leitura, null antes da montagem

▶ Exemplo

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

Saída:

Clicking focuses the input.

💡 Pontos-chave

💡 Dica Forma recomendada no 3.5+; a forma antiga (variável ref de mesmo nome + coleta automática) continua totalmente utilizável.
⚠️ Aviso O valor é null antes da montagem: verifique contra nulo antes de acessar, ou use após onMounted.
ℹ️ Nota Dentro de v-for, resulta em um array de componentes/elementos.
Mais casos em breve.

📚 Tutoriais Relacionados

❓ FAQ

P Qual a diferença de declarar diretamente uma variável ref com o mesmo nome?
R Funcionalmente iguais; useTemplateRef dispensa a restrição de mesmo nome, tem semântica mais clara e é adequado a cenários com múltiplas referências.
P Consegue obter a instância de um componente filho?
R Consegue, apontando para a instância do componente; para chamar seus métodos, é preciso expor com defineExpose no componente filho.
P E em versões abaixo do 3.5?
R Use a forma clássica: const txt = ref(null) com ref="txt" no template (coleta automática em tempo de compilação).
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%