Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

289
Vistas
¿Hay alguna forma de manejar entradas de números en lugar de cadenas con React Native?

Tengo un estado de contexto de reacción para mis valores de entrada de múltiples formularios:

 const [formValues, setFormValues] = useState({ sex: "male", unitSystem: "metric", heightInCm: "173", weightInKg: "60", dateOfBirth: null, });

y estoy luchando por entender cómo debo manejar mis entradas de números, como la altura y el peso. Por el momento tengo que almacenarlos en formato de cadena, porque TextInput solo acepta una cadena. Me encuentro teniendo que seguir convirtiendo cadenas en números para validaciones.

Por ejemplo, este es mi controlador de entrada:

 const toCm = (foot: string, inches: string) => { const footInCm = convert(parseInt(foot)).from("ft").to("cm"); const inchesToCm = convert(parseInt(inches)).from("in").to("cm"); const actualCm = footInCm + inchesToCm; return actualCm; }; const handleImperialSubmit = () => { toCm(foot, inches); setFormValues((prev) => ({ ...prev, heightInCm: toCm(foot, inches).toString(), })); setModalVisible(!modalVisible); };

¿Hay alguna manera de trabajar con números reales en reaccionar nativo, porque esto es muy confuso?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

La respuesta corta: No.

La respuesta más larga: Todavía no, no hay forma de que el TextInput de React Native le devuelva números, en parte probablemente porque no hay forma de restringir la entrada a números solo que están integrados en TextInput . Tienes un par de opciones que pueden hacer tu vida más fácil.

  1. Debido a que todo esto es solo javascript (o mecanografiado, no discriminamos), podría implementar esta funcionalidad usted mismo:
 const [number, onChangeNumber] = React.useState(null) return ( <TextInput style={styles.input} onChangeText={textValue => { if(!isNaN(textValue) && !isNaN(parseInt(textValue))) { onChangeNumber(parseInt(textValue)) } else if (textValue === "") { onChangeNumber(null) } }} value={number?.toString()} keyboardType="numeric" /> )

Puede crear un componente a partir de esto o envolver la lógica en un gancho para reutilizarlo en todas sus "entradas numéricas". El ejemplo anterior puede ser un poco exagerado después de configurar el teclado en numérico, pero desde ese teclado puede incluir un decimal que puede o no desear. La lógica se puede actualizar en consecuencia.

  1. Hablando de ganchos, hay una gran cantidad de bibliotecas de formularios que podrían interesarle y que hacen gran parte del trabajo pesado por usted. Algunas opciones incluyen:
  • Formik
  • Forma de gancho de reacción
  • Reaccionar forma final

entre otros.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda