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

[Dúvida] Thunk vs Listener + Extensão VSCode

Olá professor! Primeiro, parabéns pela didática! Estou curtindo demais a formação redux!

Conforme avançamos nos middlewares, começou a me gerar uma dúvida sobre utilizar o Thunk e Listener juntos, ou focarmos somente em usar o Listener?

Pergunto isso, pois no curso focamos no fetch dos dados, mas teríamos também a adição de categorias para o backend (json-server), bem como o delete dos items e etc... Neste caso, caberia fazermos tudo com o listener, ou misturaríamos Thunk junto?

E agora um pedido... No curso você comenta de nos passar a extensão do VSCode que usa o template string, seria essa? https://marketplace.visualstudio.com/items?itemName=meganrogge.template-string-converter (sorry se está no curso e eu não reparei)

Recomenda mais alguma extensão do vscode?

Desde já, agradeço demais suas aulas!

2 respostas
solução!

Fala Igor, tudo certo?

Primeiramente muito obrigado pelo elogio!

Sobre a dúvida, como qualquer outra feature no React, não faz mal utilizar diferentes middlewares, até porque existem middleware com funções específicas como métricas, lidar com formulários etc. Mas isso também não quer dizer que é sábio ficar utilizando todos os middlewares ao mesmo tempo só porque você sabe usar, o ideal é você ver caso a caso.

  • Normalmente o thunk é utilizado só se você precisa de um fetch com feedback (idle, fetching, fetched);
  • O listener é uma alternative "nativa" do redux para trabalhos mais elaborados, ele pode substituir o thunk facilmente caso precise de algo mais completo;
  • O Redux Saga (que você ainda vai ver) é bem mais completo que os outros dois.

Falando na minha experiência, eu começaria fetchs simples com redux thunk e depois migraria para listener ou saga (escolheria um dos dois para o projeto inteiro).

Sobre extensões, não conheço nenhuma voltada para Redux e não sou muito fã de code snippets, mas vou te dar nomes de algumas extensões que eu uso:

  • Auto Rename Tag: Essa extensão renomeia automaticamente a tag de fechamento (ou de abertura se você estiver mudando no fechamento), salva um tempo as vezes;
  • Material Icon Theme: Essa extensão coloca icones personalizados em cada arquivo baseado no tipo, com o meu olho acostumado a ele me salva muito tempo em ter que ver a extensão de cada arquivo para saber do que se trata;
  • Prettier: O prettier em si é bem conhecido, vale a pena dar uma conferida. Utilizo ele para conseguir formatar o código com um atalho no teclado, ajuda bastante;
  • GitLens: Essa aqui é boa para se trabalhar em equipe, em cada nova linha você consegue ver quem fez aquela linha, quando ela foi feita e o commit que adicionou, muito útil;
  • Import Cost: Essa eu gosto bastante pois me mostra em cada import vindo do node_modules o quanto que aquele pacote está pesando para o projeto;
  • GitLens: Essa aqui é boa para se trabalhar em equipe, em cada nova linha você consegue ver quem fez aquela linha, quando ela foi feita e o commit que adicionou, muito útil.;
  • Extras: Alguns "obrigatórios" que te aconselho ter são o Eslint e o IntelliCode. Caso você utilize macOS, aconselho utilizar o fig também que ajuda bastante a auto-completar caminho de arquivos e pastas no terminal.

Obrigado, professor!