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

149
Vistas
¿Hay una manera más fácil de definir múltiples tipos de propiedades de condición que creando un validador propio?

¿Qué pasa si quiero que el accesorio sea el tipo de número y al mismo tiempo requerido? Por lo que sé, tengo que hacer mi propio validador para eso. ¿Hay alguna manera más fácil y elegante?

 function ShopxItem(props) { return ( <> {props.name} {props.price} </> ) } function PropTypesExample(){ return ( <> <ShopxItem name="1" price="xdd"></ShopxItem> </> ) } ShopxItem.propTypes = { //i would want to do it in that way but this overwrite "price" and returning an error "Duplicate Key xxx" price: PropTypes.number, price: PropTypes.isRequired, // but as far as i know i have to do this like that price: (props, propName, componentName) => { let error; const prop = props[propName]; if(prop === undefined || isNaN(prop)){error = new Error(`${componentName} price is required and have to be a number`);return error;} return null; }, }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Algo como esto debería funcionar:

 price: PropTypes.oneOfType([PropTypes.number, PropTypes.func]).isRequired

Cambiamos a usar air-bnb's or para este propósito, en lugar de oneOfType , aunque no recuerdo por qué exactamente. En cualquier caso ese paquete también puede ser de tu interés.

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