Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

useEffect substitui o componentWillUnmount, componentDidMount e etc..?

Olá, São duas perguntas na verdade rsrs

x1. Comecei a estudar react native, e aqui na Alura é ensinado a abordagem de usar esse métodos de componentDidMount, componentWillUnmount e etc..

Porém, eu vi na web que tem muita gente ensinando, principalmente em tutoriais a já trabalhar sem esses caras, usando o useEffect, que é algo mais recente do react native. Pelo que eu entendi, esse useEffect substitui totalmente esses outros métodos do ciclo de vida do componente. Eu entendi errado ou é isso mesmo? não se usa mais os métodos mount.

x2 Reparei também que a forma de trabalhar com o state agora é um pouco diferente também. Após a inserção dos hooks, fiquei bem confuso quanto a isso, reparei que o pessoal tá parando de trabalhar com classes também.

Estou preocupado em aprender o react native de uma forma, mas os projetos (e exemplos e libs) estarem todos em outra abordagem, nesse caso se eu pegar um projeto em andamento não vou saber mexer, e os tutoriais também não vou entender, pois aprendi a trabalhar com react native de uma forma diferente.

2 respostas
solução!

Olá Douglas, tudo bem com você?

usando o useEffect, que é algo mais recente do react native. Pelo que eu entendi, esse useEffect substitui totalmente esses outros métodos do ciclo de vida do componente. Eu entendi errado ou é isso mesmo? não se usa mais os métodos mount.

Acredito que a Alura esteja trabalhando na regravação de cursos utilizando os react hooks para atualizar o curso, mas na verdade todos os hooks são algo característico do mundo React, não é algo muito específico do react-nativeou react-js

Em relação a sua dúvida, a resposta é sim!

Atualmente a maneira recomendada para se trabalhar com o React é com os functional components, ou seja, paramos de usar Classes e os métodos de ciclo de vida ( componentDidMount, etc.) para usar funções e os hooks que foi oque você citou ( useEffect)

x2 Reparei também que a forma de trabalhar com o state agora é um pouco diferente também. Após a inserção dos hooks, fiquei bem confuso quanto a isso, reparei que o pessoal tá parando de trabalhar com classes também.

A lógica também é parecida com a questão anterior, dado que agora utilizamos funções para representar os componentes, precisamos utilizar um hook ( que nada mais é do que uma outra função) responsável por cuidar do estado de noso componente, ao invés de ser um atributo da classe

Agora em relação um pouco mais geral a sua dúvida, acredito que o ideal é saber trabalhar das duas maneiras, ou pelo menos ter noção do básico com classes, ( há empresas que não atualizaram seus projetos e ainda continuam trabalhando com class components, e não há nada de errado com isso )

Fato é, novos produtos serão criados trabalhando com functional components, e muitos projetos podem ter atualizados para funcionar dessa maneira, entretanto, os cursos aqui da Alura, especificamente de React Native trabalham com os hookse os functional components ao invés de Classe :)

Então no curso é apresentado o useEffect, o useState e todo esse mundo do React funcional para que aprenda utilizando a forma mais recente de se trabalhar :)

Penso que é questão de tempo para que os cursos de React para web também venham a ser atualizados para trabalhar dessa forma!

Qualquer coisa estou à disposição :)

Abraços e Bons Estudos!

Muito Obrigado Geovani!!