Neste artigo você aprenderá a como implementar o evento onKeyPress no React, que é muito importante para pegar dados de input

Fala prgoramador(a), beleza? Bora aprender mais sobre React JS!
Os eventos são uma parte fundamental do desenvolvimento web.
No React, trabalhar com eventos é um pouco diferente em comparação com o JavaScript puro, mas não menos poderoso.
Uma das necessidades comuns é detectar a pressão de teclas, seja para criar atalhos, controlar formulários ou outras interações baseadas em teclado.
Neste artigo, vamos explorar como implementar o evento onKeyPress no React JS e algumas práticas recomendadas relacionadas a ele.
Entendendo o Evento onKeyPress
O que é onKeyPress?
O evento onKeyPress é acionado quando um usuário pressiona uma tecla enquanto um elemento específico está focado.
Este evento é comumente associado a elementos de input, mas pode ser usado em qualquer elemento interativo.
onKeyPress vs onKeyDown e onKeyUp
Além do onKeyPress, temos outros dois eventos relacionados à interação com o teclado: onKeyDown e onKeyUp.
Enquanto onKeyDown é disparado no momento em que uma tecla é pressionada (antes de ser liberada), onKeyUp ocorre quando a tecla é solta.
O onKeyPress é uma espécie de meio-termo, sendo disparado após onKeyDown, mas antes de onKeyUp.
No entanto, é importante notar que onKeyPress detecta apenas teclas que produzem um caractere (como letras, números e alguns símbolos), ao contrário de onKeyDown e onKeyUp que detectam todas as teclas.
Implementando onKeyPress no React
Uso básico
Aqui está um exemplo simples de como usar o onKeyPress em um componente funcional no React:
import React from 'react';
function InputComKeyPress() {
const manipuladorKeyPress = (evento) => {
if(evento.charCode === 13) {
alert('Enter foi pressionado!');
}
};
return <input type="text" onKeyPress={manipuladorKeyPress} />;
}
Neste exemplo, o alerta será exibido sempre que a tecla “Enter” for pressionada no input.
Acessando o valor do input
Muitas vezes, queremos obter o valor atual do input quando uma tecla é pressionada. Podemos fazer isso de forma direta:
import React from 'react';
function InputComKeyPress() {
const manipuladorKeyPress = (evento) => {
if(evento.charCode === 13) {
alert(`O valor digitado foi: ${evento.target.value}`);
}
};
return <input type="text" onKeyPress={manipuladorKeyPress} />;
}
Melhores Práticas e Considerações
Uso de constantes para códigos de teclas
No exemplo acima, usamos o número 13, que representa o código da tecla “Enter”. Para tornar o código mais legível, é uma boa prática usar constantes:
const TECLA_ENTER = 13;
// ...
if(evento.charCode === TECLA_ENTER) {
// ...
}
Evite ações indesejadas
Ao trabalhar com eventos de teclado em formulários, certifique-se de que pressionar teclas como “Enter” não cause ações indesejadas, como o envio acidental do formulário.
Acessibilidade
Lembre-se de que nem todos os usuários interagem com sua aplicação usando um teclado.
Sempre considere a acessibilidade ao desenvolver interações baseadas em teclado, garantindo que haja outras maneiras de alcançar a mesma funcionalidade.
Quer aprender mais sobre programação? Conheça nosso canal no YouTube:
Conclusão
Chegamos ao fim do artigo sobre como fazer o evento onKeyPress no React!
O evento onKeyPress é uma ferramenta valiosa para criar interações ricas e responsivas baseadas em teclado no React.
Com ele, podemos melhorar a experiência do usuário, oferecendo atalhos úteis e feedback imediato.
No entanto, como com todas as ferramentas, é importante usá-lo de maneira responsável e sempre considerando a experiência do usuário final, incluindo aqueles que podem não usar um teclado para interagir com sua aplicação.
Com as práticas e técnicas apresentadas neste artigo, você está pronto para implementar interações eficientes e acessíveis baseadas em teclado em seus projetos React.
Está buscando em evoluir como Programador? Confira o nossos cursos de programação.