Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

155
Visualizações
How to correctly use NumberFormat to guide cursor and separation of fractional numbers?

I'm using the function like this:

  const handleOnChangeSpread = useCallback((spread) => {
    const NEW_SPREAD_VALUE = new Intl.NumberFormat('pt-BR', {
      useGrouping: true,
      minimumFractionDigits: 2,
      maximumFractionDigits: 2
    }).format(spread).replace(",", ".");

    setSpread(NEW_SPREAD_VALUE);
  }, []);

  <input
    onChange={({ target: { value }}) => handleOnChangeSpread(value)}
    type="number"
    min={0}
    max={20}
    maxlength={5}
    value={spread}
   />

However, it does not provide a good user experience for the following reasons:

  1. The cursor "|" always goes to the last character;
  2. It is not possible to use the delete/backspace key;
  3. The user always has to take the cursor to the decimal place he wants to change;

How do I make it a "fluid" experience, where it's possible to easily change the values ​​delete them for the user?

almost 4 years ago · Santiago Trujillo
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda