Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

O que foi feito nessa aula?

Seria melhor se tivesse feito o código junto com os alunos ao invés de entregar um código completo, e depois fazer alterações. Eu sei o que foi feito, mas não o porque está sendo feito. Qual foi o propósito das mudanças feitas nessa aula?

1 resposta
solução!

Olá, Diego!

A refatoração mudou a arquitetura de Controle via Estado (Props) para Controle via Referência (Métodos). O objetivo principal foi resolver o Prop Drilling: antes, você precisava passar o estado estaAberta por vários componentes intermediários desnecessariamente. Agora, com ref, o componente pai comanda a Modal diretamente.

Removemos o useEffect para otimizar a performance, evitando que a Modal renderize toda vez que um estado mude; agora ela só age quando recebe uma ordem direta. O forwardRef foi necessário tecnicamente porque componentes React não aceitam referências por padrão, e a interface ModalHandle serve para o TypeScript reconhecer que essa referência possui os métodos open e close.

Basicamente, o código ficou mais limpo e performático, preparando o terreno para você usar o hook useImperativeHandle na sequência.

Espero ter ajudado!

Bons estudos!

Sucesso

Imagem da comunidade