onBeforeUnmount() Hook antes da desmontagem
Última atualização: 2026-10-22
onBeforeUnmount() Hook antes da desmontagem
onBeforeUnmount() é chamado logo antes de o componente ser destruído: o DOM ainda está disponível — a última chance de limpar manualmente timers, listeners e instâncias de terceiros.
| Grupo | Hooks de Ciclo de Vida |
|---|---|
| Tipo | API |
| Escopo | No Componente |
| Versão do Vue | 3.0+ |
| Suporte a SSR | Sim |
📝 Sintaxe
onBeforeUnmount(() => {
clearInterval(timer)
chart.destroy()
})
⚙️ Argumentos
| callback | Função executada antes da desmontagem |
|---|
Retorno:Nada
▶ Exemplo
Edite o código abaixo e veja o resultado ao vivo:
Saída:
The counter ticks each second and stops after unmount.
💡 Pontos-chave
💡 Dica Todos os recursos manuais são liberados aqui em pares: setInterval↔clearInterval, addEventListener↔removeEventListener, instância de terceiros↔destroy().
ℹ️ Nota Se a lógica de limpeza estiver escrita em um composable, onScopeDispose é mais universal.
⚠️ Aviso Neste momento o DOM ainda existe; se a limpeza depender do estado do DOM, conclua antes disso.
🏷️ Hooks de Ciclo de Vida relacionados
💡 Casos Relacionados
Mais casos em breve.
📚 Tutoriais Relacionados
❓ FAQ
P Como dividir as tarefas com onUnmounted?
R Ambos são comuns para limpeza: a diferença é se o DOM ainda está disponível — limpeza que precisa do DOM vai aqui, lógica pura em onUnmounted.
P O que acontece sem a limpeza?
R Timers continuam rodando, listeners se acumulam com novas instâncias e, com o uso prolongado, causa vazamento de memória.
P Dá para impedir a desmontagem aqui?
R Não, o Vue não tem esse mecanismo; controlar a exibição com v-if é a abordagem correta.