onErrorCaptured() Capturar erros de componentes descendentes

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

onErrorCaptured() Capturar erros de componentes descendentes

onErrorCaptured() captura erros lançados por componentes descendentes em renderização/ciclo de vida/observadores e pode impedir que o erro continue se propagando.

GrupoHooks de Ciclo de Vida
TipoAPI
EscopoNo Componente
Versão do Vue3.0+
Suporte a SSRSim

📝 Sintaxe

onErrorCaptured((err, instance, info) => {
  console.error(err)
  return false   // retorna false para impedir a propagação
})

⚙️ Argumentos

errO objeto de erro
instanceA instância do componente que lançou o erro
infoDescrição da origem do erro (render / mounted hook etc.)

Retorno:Retornar false impede que o erro continue se propagando para cima

▶ Exemplo

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

Saída:

The page shows 'caught: child exploded' without a blank screen.

💡 Pontos-chave

💡 Dica Capturar no componente raiz e reportar à plataforma de monitoramento (Sentry etc.) é um uso comum.
⚠️ Aviso Depois de capturar, o erro ainda precisa ser tratado: apenas registrar sem tratar encobre o problema e causa falhas silenciosas.
ℹ️ Nota Retornar false impede o prosseguimento do bubbling; sem retorno, o erro continua para os níveis superiores e para o errorHandler global.
Mais casos em breve.

📚 Tutoriais Relacionados

❓ FAQ

P Consegue capturar erros em requisições assíncronas de componentes filhos?
R Não: ele só captura erros lançados sincronamente em renderização, hooks de ciclo de vida e observadores; rejeições de Promise precisam ser tratadas por você.
P Qual a relação com o errorHandler global?
R O erro primeiro faz bubbling até o ponto de captura superior mais próximo: se aqui der return false, ele não chega ao manipulador global.
P Como escrever um componente de fronteira de erro?
R Basta envolver com um componente pai usando onErrorCaptured + renderização condicional de UI de reserva.
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%