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

173
Vistas
¿Cómo resolver el contenido de esta promesa?

Así que tengo el siguiente componente de filtro

 <SelectSearchFilter name="search" labelKey="option" width="small" valueKey="value" options={[ { option: "Publication Name", value: "name", exact: true }, { option: "Publication ID", value: "id", exact: true }, { option: "Publisher ID", value: "publisher", exact: true }, { option: "ISSN", value: "issn", exact: true }, { option: "Legacy FH Pub Code", value: "id", exact: true, customValue: getLegafyFhPubCode(null) } ]} />

Funciona, pero a veces necesito hacer un procesamiento previo de los valores en la parte posterior y no obtener el valor directamente del campo de entrada. Así que he creado una opción llamada customValue, para pasar funciones como valores.

El primer problema es que, idealmente, quiero llamar a customValue como una referencia a la función, no quiero que se ejecute todavía, me veo obligado a poner nulo como argumento, pero realmente no quiero ejecutarlo todavía.

Esto me lleva al componente selecsearfilter

Específicamente a esta entrada

 onKeyDown={async event => { if (event.key === "Enter") { console.log("----------------ENTER-----------------") const values = await getOptionValue(selectValue, valueKey) console.log(selectValue) //[option: 'Publication name', value: 'name', exact: true] | [option: 'Legacy FH Pub Code', value: 'id', exact: true, customValue: Promise] let customValue = await selectValue.customValue(inputValue) console.log(customValue) updateFilter(name, { property: getOptionValue(selectValue, valueKey), text: customValue ? customValue : inputValue }); } }}

Y en el código anterior, preste atención al comentario. Por lo general, cuando no hay un valor personalizado, simplemente configuro el valor de entrada en el texto al actualizar el filtro y termino.

El problema ocurre ahora que, si customValue prop está disponible (que es el caso), quiero establecer la respuesta de esa promesa como inputValue en su lugar. Pero viene como Promesa, y obtengo

 Uncaught (in promise) TypeError: selectValue.customValue is not a function at onKeyDown (SelectSearchFilter.tsx:108:1)

¿Cómo puedo resolver esa promesa? ¿Y cómo puedo pasar esa función al componente sin tener que especificar ningún argumento como nulo?

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

0

el error ocurre porque su CustomValue no es una función como dice, pero el resultado de la función getLegafyFhPubCode(null) debe pasar la función sin llamarla getLegafyFhPubCode o puede usar una función de flecha () => getLegafyFhPubCode(null)

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