Neste tutorial, você aprenderá como usar efetivamente vários elementos de entrada no React. Desde a criação de formulários simples até o gerenciamento de estado com entradas controladas e não controladas, explicaremos os conceitos básicos por meio de exemplos práticos. Ao assistir ao vídeo, você aprenderá por que o React tem alguns recursos exclusivos ao lidar com formulários e como você pode usá-los em seu aplicativo.
Principais lições
- O React usa entradas controladas e não controladas.
- O estado de um input controlado é controlado diretamente através do atributo value.
- OnChange é tratado de forma diferente no React do que no HTML tradicional.
- Sempre use um valor inicial para inputs controlados para evitar avisos.
Guia passo-a-passo
1. Noções básicas sobre os componentes de entrada
Para compreender o básico, crie um componente React para o seu campo de entrada. Em JSX, pode escrever quase o mesmo que em HTML, com a diferença de que utiliza chavetas para as expressões JavaScript.
Aqui está um exemplo simples de um campo de entrada que espera uma interação do utilizador.
2. Gestão do estado com useState
Utilize o gancho useState para gerir o estado do seu input. Defina um estado para o firstName e um setter para esse estado. Isto permite-lhe atualizar o valor do input e utilizá-lo para outras lógicas no seu componente.
Esta configuração é crucial para tornar os componentes reactivos e garantir que as alterações são reflectidas imediatamente.
3. Implementação de onChange
Utilize o método onChange para reagir às alterações no campo de entrada. Este método é chamado quando o valor na entrada muda e permite-lhe editar a entrada enquanto o utilizador está a escrever.
Você pode usar o objeto de evento para obter o valor atual da entrada. Em React, pode utilizar o objeto event.target.value para consultar o valor atual.
4. Sincronização entre estado e input
Escreva a lógica no seu método onChange para atualizar o estado do input que o contém e, ao mesmo tempo, garantir que a alteração do nome é feita corretamente. Isto garante que o campo de entrada na IU está sempre sincronizado com o estado.
Isto significa que cada toque de tecla activará o manipulador onChange e actualizará o estado, garantindo uma programação reactiva.
5 Entradas não controladas vs. controladas
Um aspeto importante dos formulários React é a compreensão entre entradas controladas e não controladas. Entradas controladas têm seu estado totalmente gerenciado via React (via valor e onChange), enquanto entradas não controladas têm seu próprio estado interno.
Se você não especificar o valor inicial para value, o input é considerado Uncontrolled. Certifique-se de que define os valores iniciais para evitar avisos durante o tempo de execução.
6. Tratamento de formulários
Crie um formulário e utilize o evento onSubmit para obter o comportamento pretendido aquando da submissão do formulário. Implemente uma função que impeça o comportamento predefinido do formulário para garantir que a página não é recarregada.
Utilize as variáveis de estado para editar as entradas no formulário e exibi-las, se necessário. Isto permite-lhe gerir e processar as entradas do utilizador conforme necessário.
7. extensão com entradas múltiplas
Se necessitar de vários campos de entrada, como o nome próprio e o apelido, pode utilizar variáveis de estado adicionais e processá-las numa única função.
Isto permite-lhe gerir eficazmente o valor de entrada do utilizador de uma forma coesa, o que é especialmente importante se precisar das entradas para validação ou visualização.
8 Conclusão da implementação
Sempre que você trabalhar com formulários no React, é importante entender as diferenças no tratamento de entradas controladas e não controladas. Isso o ajudará a tirar o máximo proveito do React e a garantir uma interface de usuário responsiva.
Resumo
Neste guia, você aprendeu os conceitos básicos de manipulação de elementos de entrada no React. Desde a implementação do hook useState até as diferenças entre inputs controlados e não controlados, você aprendeu como criar e gerenciar formulários corretamente no React.
Perguntas frequentes
O que são inputs controlados no React? Inputs controlados no React são inputs cujo valor é gerenciado por meio de um estado. O seu estado é controlado através da propriedade value.
Como lidar com avisos relativos a entradas controladas e não controladas?Para evitar avisos, certifique-se de que as entradas controladas têm sempre um valor inicial que não é indefinido.
Quando devo usar onChange em vez de onInput? Use onChange, pois é o padrão comum para lidar com alterações de entrada no React e faz mais sentido do que onInput.
Como posso validar formulários de forma limpa no React? Use o método onSubmit em combinação com um estado para verificar, processar e validar a entrada sem recarregar a página.