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

174
Vistas
Cómo ignorar la llamada de evento onBlur cuando se presiona la tecla Intro en async-react-select

Estoy usando el componente Async de react-select para la edición en línea en ag-grid. Hay un evento disponible en el componente de selección de reacción (onChange) que captura el valor y la acción cuando hacemos cambios. Pero cuando presiono el botón Intro para seleccionar un elemento del menú desplegable, no se llama al método onChange. La razón por la que me di cuenta es que se llama al método onBlur después de presionar el botón Intro en el menú desplegable.

A continuación se muestra el ejemplo del componente asíncrono:

 <Async className = "async-multi-select" classNamePrefix="react-select" isMulti defaultValue={[]} id={"aync-react-select"} {...this.props} placeholder={""} onFocus = {() => this.handleFocusChange(true)} onBlur = {() => this.handleFocusChange(false)} onChange = {(value,action) => this.handleChange(value,action)} />

A continuación se muestran los eventos:

 private handleChange(value: any[], action: ActionMeta): void { if (this.props.onChange){ this.props.onChange(value,action) } this.setState({hasSelection: value.length > 0}); } private handleFocusChange(hasFocus: boolean){ this.setState({hasFocus}); }

¿Alguna sugerencia de cómo puedo ignorar el evento onBlur que se activará cuando presione el botón Intro?

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

0

Supongo que desea el valor del elemento seleccionado de la lista desplegable cuando hace clic en el elemento desplegable. El evento onBlur se activa cuando se aleja de la entrada, y onChange se activa solo cuando realiza cambios dentro del campo de entrada. Entonces, cuando intenta presionar enter en el elemento desplegable, esencialmente se está alejando de la entrada y, por lo tanto, se llama al evento onBlur . Dado que puede presionar el elemento desplegable, puede agregar un complemento onClick en el elemento y pasar el valor del elemento a handleChange junto con la acción. Puede actualizar su componente desplegable a algo como lo siguiente:

 <DropDownComponent {...this.props} {/*Other props here*/} onClick={()=> this.handleChange(value,action)} />

Si está mapeando estos elementos desplegables, puede obtener el valor del elemento del mapa y la acción debe pasarse manualmente. De esta manera, puede actualizar el valor del elemento desplegable en el que se hace clic.

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