Muito bom ver a Rocketseat avançando em conteúdos com mais profundidade! Já existem muitos conteúdos para iniciantes ou nível intermediário e poucos conteúdos bons de nível avançado, principalmente em português.
Vídeo pra ser visto mais de uma vez! Esses conceitos são muito importantes e acredito que todo mundo que já brincou com o react já gastou um tempo por causa desses "problemas"
Excelente vídeo, acho que tão importante quanto saber usar a ferramenta, é saber como ela funciona "por de baixo dos panos" para saber também suas limitações, acho que seria interessante, talvez junto do vídeo ou em uma série separada, mostrar como tu chega a essas conclusões, seja fuçando no pacote do react ou documentação/fóruns para que a gente também possa aprender a como ....aprender?? haha mas super apoio essa série "É errando que se aprende". Valeu Diego, valeu Rocket!!
Maravilhoso video Diego!! Mais videos assim sao muito bem-vindos! 💖 Explicar o funcionamento da programacao de uma forma mais pura, sem frameworks (ou o que o framework faz por baixo dos panos - como esse video). E conceitos basicos, porem essenciais, como closures, recursion, recursive, curry e etc... Obrigado pelo conteudo! 💖💖
Muito legal man, como pode fazer tanto sentido kkjkdkdkk eu gosto muito, e a função do useState, poder receber uma função com parâmetro do último estado da variável mudou minha vida kkkdkdk
Rapaz, acabei de salvar o vídeo "3 coisas que você precisa dominar pra aprender React", agora eu chego aqui e saiu o "Duas regras que você precisa cumprir com hooks no React". Acho que é o destino falando pra eu focar mais no React Native, Web eu ainda prefiro 1000x o VueJS.
Gosto de sempre usar Call back function no useState quando estou utilizando o valor antigo. Esse problema pode acontecer tb quando estamos tratando um valor async tb.
Excelente vídeo, conteúdo extremamente relevante. Estou acostumado a usar o Vue.js e, ao alterar uma variável dentro de uma função, na sequência eu já consigo fazer uma operação com o valor atualizado. Demorei pra perceber que no React o funcionamento é diferente e o seu vídeo explicou muito bem o porquê. Sensacional!
Incríveeeeeel!! Por mais conteúdos assim, por favor! Faz a gente, que está aprendendo, entender melhor alguns comportamentos, erros e as formas de evitá-los!
Dois videos em seguida explicando alguma coisa que eu achava que sabia mas na verdade nao sabia!!! Continua com esse tipo de conteudo Diego!!! Valeu mesmo!!
Então, quando vc faz uso de um componente, apesar de ele já ser escrito como se fosse uma função, ele será transformado em uma outra função no bundle.js, que receberá como argumentos as variáveis do seu componente, inclusive as funções, que serão, naturalmente, um callback (ou delegate como faziam os incas e astecas xD ). VAleu, Diego!
não passei por esses problemas ainda, mas é bom ja saber de antemão... vlw... belo video.... "Hey marcas de teclado!! Esse homem precisa de um teclado novo!"
Dahora, ja conhecia mas passei por isso ontem haha, pra setar valores dentro de um objeto, dai fiquei uns minutos e lembrei dessa questão e consegui resolver o problema, coisas de Dev Junior haha mt top o video
Salve Diegão!!! Massa demais esse conteudo, era um dos pontos que eu não tava entendendo... "now everything makes sense!" ||| e não é por nada, não, mas parece que, ou o filtro ta estranho ou o Diegão não dormiu direito kkkkkk Salve equipe da rockets, Abraço!
Uma coisa sobre hooks condicionais que eu nao entendo é tipo, por exemplo: quando eu uso o graphql no front com react, eu nao posso fazer a chamada do 'useQuery' dentro de um if. A minha ideia na epoca era criar um unico hook personalizavel que executasse uma query de acordo com o parametro que vinha, porem como eu nao podia colocar dentro de um if ou switch case, acabava tendo que criar um hook pra cada funçao. No exemplo do video, mostrou no caso do hook nao ser criado numa segunda renderizacao (qd for false), porem no meu exemplo, um useQuery sempre seria criado, mas o ESLINT nao me deixava fazer kk. De qualquer forma, optei por nao usar graphql no front pra evitar esse tipo de coisa
Boa! Agora, eu sei que para modificar o valor do estado mais de uma vez, eu tenho que alterar mediante a seguinte função: steCount((count) => count + 1). Porém não entendo o que está acontecendo "debaixo dos panos"? Poderia fazer uma vídeo explicando? Muito Obrigado. Parabéns pelo conteúdo...
mano, pelo o que eu entendi no vídeo, ele executa uma função. Assim como caso você passasse apena setCount(count + 1), onde count é um valor fixo, a função se executará setCount(state => state + 1), onde state é sempre o valor anterior.
Fala Diego, beleza? Conteúdo incrível, parabéns pela altíssima qualidade sempre. Teria como trazer mais vídeos voltados a node nesse estilo? Sinto a carência de conteúdos em node também. Abraços!
Diego, no último exemplo que você faz a referência do state, nesse caso ele só renderiza o componente uma vez ou 5? Tipo, ele espera a função concluir todas as linhas pra dai triggar o rerender ou ele vai triggar 5 vezes porque chamou o setState 5 vezes? Obs: Isso que estou falando é independente se o valor alterou 5 vezes ou não.
Ele faz uma vez só, isso se chama Automatic Batching que sempre foi feito sozinho e na última versão do React temos o batching também funcionando dentro de código assíncrono (reactjs.org/blog/2022/03/29/react-v18.html#new-feature-automatic-batching).
Dá pra dar um setCount e logo em seguida já usar o valor atualizado de alguma forma, sem precisar salvar esse valor numa variável? Por exemplo esse código: const newCount = count + 1; setCount(newCount); setCrazyState(newCount * 2); Seria possível fazer assim? setCount(count + 1); setCrazyState(count * 2); //com o count atualizado
Foco e profundidade, como falei no meu instagram pessoal nessa foto (instagram.com/p/CgxSjNKObC5/), eu sei menos coisas hoje do que sabiam 6-7 anos atrás.
teria alguma referencia para aprofundar nessa questão? Entendo que foi um exemplo simplificado mas se o problema fosse a ordem que as propriedades são passadas e o time do react quisesse permitir hooks condicionais os componentes poderiam receber seus "params e hooks" como um objeto, ai não importaria se um desses valores não fosse enviado, ou de alguma forma contar o numero de params que ele espera e preencher com undefined caso o parametro não tivesse valor definido
então é por isso que eu não posso simplesmente chamar a função setCounter no corpo da função do componente e fora de um evento? porque quando eu chamo a função setCounter o componente é re-renderizado e a função ele vai entrar em um loop infinito?
O condicional acaba mudando a ordem dos states e com isso a "ordem dos parâmetros" da função, como o React não guarda um nome pra cada estado, ele se perde.
Fala Diego! Continua trazendo conteúdos desse porte que ajuda muito a galera. Abraço!
Pode deixar!
Estes conteúdos que aprofundam os conceitos primários do React, ou de qualquer linguagem, são essênciais!
Esses vídeos com conceitos mais avançados são muito importantes para a comunidade!
Parabéns!
Muito bom ver a Rocketseat avançando em conteúdos com mais profundidade! Já existem muitos conteúdos para iniciantes ou nível intermediário e poucos conteúdos bons de nível avançado, principalmente em português.
Vídeo pra ser visto mais de uma vez! Esses conceitos são muito importantes e acredito que todo mundo que já brincou com o react já gastou um tempo por causa desses "problemas"
Excelente vídeo, acho que tão importante quanto saber usar a ferramenta, é saber como ela funciona "por de baixo dos panos" para saber também suas limitações, acho que seria interessante, talvez junto do vídeo ou em uma série separada, mostrar como tu chega a essas conclusões, seja fuçando no pacote do react ou documentação/fóruns para que a gente também possa aprender a como ....aprender?? haha mas super apoio essa série "É errando que se aprende".
Valeu Diego, valeu Rocket!!
Trabalho com React a um ano e não tinha parado pra pensar nisso, muito massa, clareou as ideias!!!!
Maravilhoso video Diego!! Mais videos assim sao muito bem-vindos! 💖
Explicar o funcionamento da programacao de uma forma mais pura, sem frameworks (ou o que o framework faz por baixo dos panos - como esse video). E conceitos basicos, porem essenciais, como closures, recursion, recursive, curry e etc...
Obrigado pelo conteudo! 💖💖
Fala Diego, Obrigado pelo Video. Eu já sabia que não podia Usar, mais me convenci agora porque.
Muito legal man, como pode fazer tanto sentido kkjkdkdkk eu gosto muito, e a função do useState, poder receber uma função com parâmetro do último estado da variável mudou minha vida kkkdkdk
Ótima explicação, continuem criando esses conteúdos pois estão ajudando demais
Você poderia trazer um conteúdo sobre Autenticação social + via Api na mesma aplicação abordando a melhor estratégia de se fazer isso 🚀
Ganhou meu "laique" nos incas e astecas hahahaha
Rapaz, acabei de salvar o vídeo "3 coisas que você precisa dominar pra aprender React", agora eu chego aqui e saiu o "Duas regras que você precisa cumprir com hooks no React".
Acho que é o destino falando pra eu focar mais no React Native, Web eu ainda prefiro 1000x o VueJS.
Tomei martelada o vídeo todo, mas esse final aí fez um milagre!
Boa Diogão!!!
Conteúdo massa! Já caí várias vezes nesse erro e fiquei muito putaço hahahah .
Agora eu saquei, agora entendi!
Valew e parabéns!
Gosto de sempre usar Call back function no useState quando estou utilizando o valor antigo. Esse problema pode acontecer tb quando estamos tratando um valor async tb.
Esses vídeos de conceitos de base do react são essenciais!
Boa Diegão! Parabéns pelo conteúdo!
Excelente vídeo, conteúdo extremamente relevante. Estou acostumado a usar o Vue.js e, ao alterar uma variável dentro de uma função, na sequência eu já consigo fazer uma operação com o valor atualizado. Demorei pra perceber que no React o funcionamento é diferente e o seu vídeo explicou muito bem o porquê. Sensacional!
Excelente explicação!
Se eu tivesse tido uma explicação visual assim lá nos primórdios dos hooks teria me polpado um baita tempo!!
Valeu Diego, estava com dificuldade de entender no ignite, por aqui você esclareceu tudo, obrigado mesmo pela ajuda
Estava com esse "problema" a umas duas semanas, esse video teria me poupado muito tempo hahaha
Meu cérebro explodiu agora hahaha. Sabia que ele não deixava fazer isso, mas não sabia o porquê. Muito bom!!
Incríveeeeeel!! Por mais conteúdos assim, por favor! Faz a gente, que está aprendendo, entender melhor alguns comportamentos, erros e as formas de evitá-los!
Show de bola! Conteúdo de muita qualidade. Parabéns Diego!!!
Dois videos em seguida explicando alguma coisa que eu achava que sabia mas na verdade nao sabia!!! Continua com esse tipo de conteudo Diego!!! Valeu mesmo!!
Que bom que curtiu!
Caí hoje, descobri neste vídeo o porque 😂😂✌️.
Obrigado pelo conteúdo.
Cara eu estava passando nesse problema do setState igualzinho e não estava entendendo... Muito obrigado
Então, quando vc faz uso de um componente, apesar de ele já ser escrito como se fosse uma função, ele será transformado em uma outra função no bundle.js, que receberá como argumentos as variáveis do seu componente, inclusive as funções, que serão, naturalmente, um callback (ou delegate como faziam os incas e astecas xD ). VAleu, Diego!
não passei por esses problemas ainda, mas é bom ja saber de antemão... vlw... belo video.... "Hey marcas de teclado!! Esse homem precisa de um teclado novo!"
Dahora, ja conhecia mas passei por isso ontem haha, pra setar valores dentro de um objeto, dai fiquei uns minutos e lembrei dessa questão e consegui resolver o problema, coisas de Dev Junior haha mt top o video
Sensacional Diego!! Explicação super didática e fácil 👏🏾
Salve Diegão!!! Massa demais esse conteudo, era um dos pontos que eu não tava entendendo... "now everything makes sense!" ||| e não é por nada, não, mas parece que, ou o filtro ta estranho ou o Diegão não dormiu direito kkkkkk Salve equipe da rockets, Abraço!
Uma coisa sobre hooks condicionais que eu nao entendo é tipo, por exemplo:
quando eu uso o graphql no front com react, eu nao posso fazer a chamada do 'useQuery' dentro de um if.
A minha ideia na epoca era criar um unico hook personalizavel que executasse uma query de acordo com o parametro que vinha, porem como eu nao podia colocar dentro de um if ou switch case, acabava tendo que criar um hook pra cada funçao.
No exemplo do video, mostrou no caso do hook nao ser criado numa segunda renderizacao (qd for false), porem no meu exemplo, um useQuery sempre seria criado, mas o ESLINT nao me deixava fazer kk. De qualquer forma, optei por nao usar graphql no front pra evitar esse tipo de coisa
Esse formato é muito daora!! Excelente vídeo
Muito bom, já sofri a lot por causa desses erros de hooks do react kkkk
Cara isso e D+, muito bom meu velho, excelente conteudo.
excelente aula diegão
Sensacional, Diego, parabéns pelo conteúdo.
Top demais Diegão!
When I've started producing I personally have downloaded most of the plugins from there, never had problems with virus, malwares and
Amei o batom e o conteúdo, continua Diegão kkkkk
Que bom que gostou, está na minha paleta :)
Ótima didatica, video muito bom !
Excelente vídeo Diego! Gosto muito do seu conteúdo e didática
Vídeo muito bom, sempre bem Diego!🚀
A Rocketseat salvando dnv
Baita conteúdo! 🚀👏
Como sempre excelente conteúdo! Obrigado! Só uma sugestão, a música de fundo está muito alta nos vídeos, distrai bastante
Sensacional, adorei o lip tint
Conteúdo Fenomenal !!!!
Boa!
Agora, eu sei que para modificar o valor do estado mais de uma vez, eu tenho que alterar mediante a seguinte função:
steCount((count) => count + 1).
Porém não entendo o que está acontecendo "debaixo dos panos"?
Poderia fazer uma vídeo explicando?
Muito Obrigado.
Parabéns pelo conteúdo...
mano, pelo o que eu entendi no vídeo, ele executa uma função. Assim como caso você passasse apena setCount(count + 1), onde count é um valor fixo, a função se executará setCount(state => state + 1), onde state é sempre o valor anterior.
mano, esse video E X P L O D I U minha mente... parabens!
Muito show!
Opa, quais sao as configurações de ESLINT e Prettier você usa?
Fala Diego, beleza? Conteúdo incrível, parabéns pela altíssima qualidade sempre. Teria como trazer mais vídeos voltados a node nesse estilo? Sinto a carência de conteúdos em node também. Abraços!
Legal a dica, tenho uma pergunta, como vc faz para colocar sua câmera na tela?
Conteúdo top ein Diegão, e esse teclado ein, já faz uns meses que ta nessa kkkkk
Consegui resolver essa semana! (não da forma que eu queria, se é que me entendes hehe)
13:11
Quando o cara sabe como aproveitar os limões da vida hahaha
Video curtinho mas recheado de conteúdo!! Showww
Diego, no último exemplo que você faz a referência do state, nesse caso ele só renderiza o componente uma vez ou 5? Tipo, ele espera a função concluir todas as linhas pra dai triggar o rerender ou ele vai triggar 5 vezes porque chamou o setState 5 vezes? Obs: Isso que estou falando é independente se o valor alterou 5 vezes ou não.
Ele faz uma vez só, isso se chama Automatic Batching que sempre foi feito sozinho e na última versão do React temos o batching também funcionando dentro de código assíncrono (reactjs.org/blog/2022/03/29/react-v18.html#new-feature-automatic-batching).
o que voce esta usando no tsconfig para voce nao precisar definir tipos na sua aplicação react ???
Thank You So Much Bud
Excelente vídeo!
Muito bom, Brabissimo
Muito bom poderia fazer um de zustand
Dá pra dar um setCount e logo em seguida já usar o valor atualizado de alguma forma, sem precisar salvar esse valor numa variável?
Por exemplo esse código:
const newCount = count + 1;
setCount(newCount);
setCrazyState(newCount * 2);
Seria possível fazer assim?
setCount(count + 1);
setCrazyState(count * 2); //com o count atualizado
Respondendo minha própria pergunta, dá pra fazer algo tipo assim 🤔:
setCount(count => {
count++;
setCrazyState(count * 2);
return count;
});
Como voce e tao bom diego? Em sabedoria.
Foco e profundidade, como falei no meu instagram pessoal nessa foto (instagram.com/p/CgxSjNKObC5/), eu sei menos coisas hoje do que sabiam 6-7 anos atrás.
Link esta indisponivel..
Fantástico! Como acho isso na documentação?
pt-br.reactjs.org/docs/hooks-rules.html#explanation
Sensacional!
Excelente! 👏🏻
Fala Diego, qual o modelo de câmera que vc utiliza ?
O famoso "prevState" rs .
"ou classes como faziam os incas e astecas" me quebrou mt mano KKKKKKKKK
teria alguma referencia para aprofundar nessa questão? Entendo que foi um exemplo simplificado mas se o problema fosse a ordem que as propriedades são passadas e o time do react quisesse permitir hooks condicionais os componentes poderiam receber seus "params e hooks" como um objeto, ai não importaria se um desses valores não fosse enviado, ou de alguma forma contar o numero de params que ele espera e preencher com undefined caso o parametro não tivesse valor definido
A referência é a própria documentação: pt-br.reactjs.org/docs/hooks-rules.html#explanation
You are dope bro! Damn , thank you so much, subbed
What do I do when the channel rack becos too cluttered? If I can, how do I clear it?
Qual a configuração do navegador que grifa o componente quando ele é renderizado? Vi em um video como ativava mas esqueci
React DevTools e dai nas configs tem uma opção "Highlight componentes when rerenders"
Show!
Thanks so much bro.
Muito bom!!!
🚀🔥🔥🔥
Vídeo bom
Descobri quando precisei fazer uma paginação e tive que pegar o prevState kk
Brabo !!!
Boa diego!
Seria interessante deixar alguns fontes na descrição, senti falta
A fonte é sempre a documentação pt-br.reactjs.org/docs/hooks-rules.html#explanation
Top!
O que vc usa de software pra sua câmera nesse formato na tela e esse follow que deu no seu rosto qndo mudou de lado e a câmera buscou vc?
TB tô curioso pra saber
github.com/maykbrito/mini-video-me
Me parece que quando ele mudava de lado, ele mesmo ajustava a imagem
então é por isso que eu não posso simplesmente chamar a função setCounter no corpo da função do componente e fora de um evento? porque quando eu chamo a função setCounter o componente é re-renderizado e a função ele vai entrar em um loop infinito?
Exatamente
Best guy how did u get it, what torrent did u use
Vi isso no Ignite
Does it support for windows 10?
Fala Diegão! Poderia falar sobre o erro: "Can't perform a React state update on an unmounted component", por favor!!!!! Adoro o conteúdo da Rocket!
me ajudou muitoo
O condicional ainda ficou confuso pra mim o motivo, mas o state na function deu pra entender bacanudo.
O condicional acaba mudando a ordem dos states e com isso a "ordem dos parâmetros" da função, como o React não guarda um nome pra cada estado, ele se perde.
Acabei voltando o vídeo para entender melhor e ficou super claro. Parabéns pelo conteúdo Diego.
I'm convinced that the big investors and analysts are trying to scare us to keep us poor and ignorant to the market.. because its steady
Ótima explicação! Mas essa música de fundo me atrapalhou um pouco, era melhor quando vocês não colocavam música de fundo nos vídeos.
Obrigado pelo feedback
eu nem percebi a música de fundo sinceramente
Muito bom :)
foda, sabia que não funcionava mas não sabia o porque rs