frontendbr / forum

:beer: Portando discussões feitas em grupos (Facebook, Google Groups, Slack, Disqus) para o GitHub Discussions
MIT License
4.25k stars 234 forks source link

Loadings e eventos que envolvem vários componentes... Redux ou Hooks? #1547

Closed wilsonneto-dev closed 4 years ago

wilsonneto-dev commented 5 years ago

Fala pessoal, blz?

Ainda em meu site institucional hehe resolvi usar um loading entre as requisições, criei meu componente e tal... Ele tá lá no meu componente App pai de todos, as páginas estão dentro de um routers dentro dele, o que eu queria era que quando uma página estivesse esperando seus dados do servidor esse loading ficasse visídel....

Bom, já usei redux/reducers e actions em alguns projetos de estudos, usar ele aqui seria uma boa? Vou usar estados compartilhados apenas neste e em alguns outros poucos casos... Como seria uma solução legal usando Hooks?

Alguém tem um exemplo que se encaixaria aqui? Ou uma dica? Ou uma outra implementação?

Muito obrigado!

lucas-moraes commented 5 years ago

Fala Wilson beleza ? Cara, no mês passado eu participei de um projeto que implementamos ReactJS Hooks (UseState e UseEffect) para loading, usamos Material UI Skeleton para loading, tipo o do youtube. Segue link abaixo: https://github.com/lucas-moraes/Getpet/blob/master/src/components/petCard/index.js Espero que ajude ! E se precisar de ajuda no projeto chama nóis !

wilsonneto-dev commented 5 years ago

Shoow @lucas-moraes, mais uma vez muito obrigado!

eliseumds commented 5 years ago

Recomendo mover a lógica de data loading para um hook separado (composto). Alguns exemplos prontos:

ninetails commented 5 years ago

Falaria para usar Redux somente se vc não estiver confortável em usar Hooks. Para aplicações grandes, falaria para cogitar o uso de Redux somente se vc precisar de um estado da aplicação centralizado.

Sendo coisa nova (dizendo: não legado pq titio Dan Abramov recomenda que para Hooks, deixe o que tá funcionando lá de boas), Hooks é uma maravilha. Faça composição entre Hooks criando hooks personalizados. Não dá pra usar hooks dentro de hooks mas dentro de um custom hook dá pra vc agregar toda lógica referente a uma implementação (lembre de Single Responsability). Encapsule um useState e controle dentro de um useLayoutEffect ou mesmo ao triggar eventos como cliques etc.

Se não me engano o curso sobre React Hooks do Kent C. Dodds no egghead deve ser free.

wilsonneto-dev commented 5 years ago

Opa, vou ver esse curso, valeu pela opinião!