Aprenda a criar máscaras para inputs no React usando react-input-mask

Guia prático sobre a biblioteca react-input-mask para criar máscaras em inputs.

Criando máscaras para inputs no React com react-input-mask

Quando desenvolvemos aplicações web, frequentemente precisamos coletar informações de usuários através de formulários. Para garantir que os dados sejam inseridos corretamente, é comum usar máscaras em campos de input. Neste tutorial, vamos explorar a biblioteca react-input-mask, que facilita a implementação de máscaras em inputs em aplicações React.

O que é o react-input-mask?

O react-input-mask é uma biblioteca que permite adicionar máscaras em campos de input de forma fácil e intuitiva. Com ela, você pode especificar quais tipos de dados podem ser inseridos, como datas, números de telefone e outros formatos específicos. Isso não apenas melhora a experiência do usuário, mas também garante que os dados sejam validados antes de serem enviados ao servidor.

Instalando a biblioteca

Para começar a usar o react-input-mask, você deve instalá-lo em seu projeto. Execute o seguinte comando no seu terminal:

npm install react-input-mask

Esse comando irá adicionar a biblioteca ao seu projeto, permitindo que você a utilize em seus componentes React.

Implementando uma máscara de telefone

Vamos criar um exemplo prático onde utilizamos uma máscara para um número de telefone. No seu componente React, você pode fazer o seguinte:

import React from 'react';
import InputMask from 'react-input-mask';

const PhoneInput = () => {
    return (
        <InputMask mask="(99) 99999-9999" placeholder="Digite seu telefone">
            {(inputProps) => <input {...inputProps} />}
        </InputMask>
    );
};

export default PhoneInput;

No código acima, estamos criando um componente PhoneInput que utiliza o InputMask. A máscara especifica o formato do telefone, onde "99" representa os dígitos do DDD e "99999-9999" representa o número do telefone. O placeholder fornece uma dica visual para o usuário sobre como deve ser o formato de entrada.

O que o código está fazendo aqui é permitir que o usuário insira um número de telefone que siga a máscara especificada, garantindo que os dados sejam consistentes.

Máscaras para outros tipos de dados

Além de números de telefone, o react-input-mask pode ser usado para outros tipos de dados, como CPF, datas e cartões de crédito. Aqui estão alguns exemplos:

Máscara para CPF

<InputMask mask="999.999.999-99" placeholder="Digite seu CPF">
    {(inputProps) => <input {...inputProps} />}
</InputMask>

Máscara para data

<InputMask mask="99/99/9999" placeholder="DD/MM/AAAA">
    {(inputProps) => <input {...inputProps} />}
</InputMask>

Esses exemplos mostram como a biblioteca pode ser aplicada a diferentes situações, permitindo que você crie uma interface de usuário mais amigável e intuitiva.

Customizando a máscara

O react-input-mask também permite a criação de máscaras personalizadas. Você pode definir regras específicas sobre quais caracteres são permitidos e como a formatação deve ser aplicada. Por exemplo:

<InputMask mask="9999-9999" maskChar="_" placeholder="Digite seu código">
    {(inputProps) => <input {...inputProps} />}
</InputMask>

Nesse exemplo, o maskChar define um caractere que será exibido quando o usuário não preencher o campo, dando uma indicação visual de que o campo ainda precisa ser completado.

Conclusão

A implementação de máscaras em inputs é uma prática recomendada em desenvolvimentos de formulários. Com a biblioteca react-input-mask, você pode facilmente aplicar diferentes máscaras em seus campos de input, proporcionando uma experiência de usuário mais agradável e evitando erros de entrada.

Explorar as funcionalidades do react-input-mask pode ajudar a melhorar ainda mais a usabilidade do seu aplicativo React, tornando-o mais robusto e amigável.

Para mais informações, consulte a documentação oficial .

As máscaras de input são uma técnica valiosa em desenvolvimento web, especialmente quando se trata de coletar dados do usuário. Elas ajudam a garantir que as informações sejam inseridas em um formato específico, o que é crucial em muitos contextos, como em campos de telefone ou CPF. Utilizando a biblioteca react-input-mask, você pode facilmente implementar essas máscaras em suas aplicações React, melhorando a experiência do usuário e a qualidade dos dados coletados. Neste tutorial, vamos explorar como configurar e utilizar essa biblioteca para criar máscaras de forma simples e eficaz.

Algumas aplicações:

  • Formulários de cadastro
  • Checkout em lojas virtuais
  • Aplicativos de agendamento
  • Coleta de dados para pesquisas

Dicas para quem está começando

  • Teste suas máscaras em diferentes navegadores.
  • Use placeholders para melhorar a usabilidade.
  • Mantenha a máscara simples para não confundir o usuário.
  • Valide sempre os dados antes de enviá-los ao servidor.

Contribuições de Gabriel Nogueira

Compartilhe este tutorial: Como criar uma máscara para inputs no React com react-input-mask?

Compartilhe este tutorial

Continue aprendendo:

Como converter fusos horários no React usando moment.js?

Aprenda a manipular fusos horários no React com a biblioteca moment.js, facilitando o trabalho com datas e horários em aplicações web.

Tutorial anterior

Como validar CPF/CNPJ no React usando bibliotecas externas?

Descubra como validar CPF e CNPJ em React com bibliotecas apropriadas.

Próximo tutorial