4 Respostas. Durante a reconciliação VirtualDOM se um componente existia, mas não existiria mais, o componente é considerado desmontado e tem a chance de ser limpo (via componentWillUnmount). Ao derrubar uma árvore, os nós DOM antigos são destruídos. As instâncias de componentes recebem componentWillUnmount.
Por que meu componente está desmontando o React?
Os componentes são desmontados quando o componente pai não é mais renderizado ou o componente pai executa uma atualização que não renderiza esta instância. React DOM. unmountComponentAtNode também acionará uma desmontagem.
Como você impede a desmontagem de componentes?
Usando react-router você pode facilmente evitar a mudança de rota (o que impedirá a desmontagem do componente) usando Prompt. Você precisa passar manualmente o prop getUserConfirmation que é uma função. Você pode modificar esta função como quiser em qualquer roteador (navegador, memória ou hash) para criar sua caixa de diálogo de confirmação personalizada (por exemplo.
O que é desmontar um componente?
componentWillUnmount é a última função a ser chamada imediatamente antes do componente ser removido do DOM. Geralmente é usado para realizar a limpeza de quaisquer elementos DOM ou temporizadores criados em componentWillMount. Em um piquenique, componentWillUnmount corresponde a pouco antes de você pegar sua toalha de piquenique.
O que aciona componentWillUnmount?
componentWillUnmount é invocado imediatamente antes de umcomponente é desmontado e destruído. Execute qualquer limpeza necessária neste método, como invalidar temporizadores, cancelar solicitações de rede ou limpar quaisquer assinaturas criadas em componentDidMount.