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

[Bug] o valor do useState não identifica a primeira alteração

Olá, estou praticando junto as aulas do curso e algo saiu fora do esperado, seguindo as orientações utilizei o hook useState('') atribuindo uma string vazia como conteudo inicial da variavel "valor", atribui esse valor ao "value={}" do input e adicionei a função "aoDigitar" em um evento de "onChange={}" nesse mesmo input, essa função atribui um novo valor utilizando o setValor(evento.target.value), porem quando eu testo na página ao inserir a primeira letra no input o console.log() mostra algo vazio, logo em seguida quando digito a segunda letra aparece a primeira e assim em diante, porem quando termino de digitar o nome por exemplo, a ultima letra não é considerada e não é atribuída a variável "valor", oque pode estar acontecendo?

Trecho de código utilizado Componente CampoTexto

Resultado gerado na página: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Salve, Gabriel!

Isso não é um bug :)

O que acontece é que o useState não é síncrono, e na hora que você faz o console.log o valor do estado ainda não mudou.

Dá uma olhada nesse vídeo que pode te ajudar a entender como esse hook do React funciona ;)

certo, vou ver o vídeo aqui, obrigado pela resposta, no caso como fazemos para conseguir pegar o valor completo sendo que ele não identifica a ultima letra quando termino de escrever o nome? isso é explicado nas proximas aulas?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software