Porque utilizar class component e não function component, sendo que no exemplo do react é ultilizado uma function, qual a diferença desses dois tipos de component?
Porque utilizar class component e não function component, sendo que no exemplo do react é ultilizado uma function, qual a diferença desses dois tipos de component?
Olá Renato, tudo bem?
Acredito que a abordagem da nova formação é ir mostrando a evolução do React
, e refatorando para as práticas mais atuais, por isso que temos depois o React: Function Components
para trabalhar com todo esse ecossistema novo
A grande diferença é a maneira como estava organizado as informações, com o Class Components
nós temos um estado interno, e um ciclo de vida da classe com os métodos componentDidMount
componentWillMount
, etc....
Com o functional components
tanto o estado, quanto os updates estão presentes através dos hooks
e você também vai percebendo que a sintaxe vai ficando mais simples de entender e de se localizar no projeto, além de podermos reutilizar diversas coisas ( como os custom hooks
) coisa que não era tão simples quando utilizamos classes
A própria documentação do React traz algumas motivações para essa mudança, mas como é dito no texto, não há qualquer intenção de remover as classes do React
nesse momento, e as vezes podemos pegar projetos que não foram refatorados para Functional Components
e nesse sentido é muito importante saber trabalhar das duas formas!
Abraços e Bons Estudos :)
Obrigado pela explicação