Event Options
ElementEventOptions es una herramienta versátil de webforJ diseñada para encapsular y gestionar configuraciones para eventos de Element dentro de aplicaciones webforJ. Como un contenedor de varias opciones, permite a los desarrolladores dictar con precisión cómo se deben procesar los eventos asociados con los elementos.
Datos del evento
Los datos del evento son una característica clave de ElementEventOptions, permitiendo a los desarrolladores adjuntar información específica a las opciones del evento. Esta funcionalidad facilita el paso de datos personalizados del cliente al servidor cuando se activa un evento. Esta capacidad es fundamental para transmitir contexto adicional o parámetros asociados con el evento, y permite que la información se acceda y utilice sin que se necesiten viajes adicionales al cliente.
Por ejemplo, considera un escenario donde tienes un evento de clic en un botón, y quieres pasar el nombre de usuario del usuario actual junto con el evento. En lugar de consultar el nombre de usuario de un cliente cada vez, envía esta información junto con el evento como datos.
Para más información, consulta las páginas de eventos y Interacción Cliente/Servidor.
Para agregar datos a las opciones del evento, puedes usar el método addData().
Ejecutando JavaScript
La clase ElementEventOptions permite a los desarrolladores especificar código JavaScript que se evaluará del lado del cliente antes de que se dispare el evento asociado. Esta característica habilita a los clientes para preparar datos del evento o activar eventos adicionales según sea necesario. Esto es útil en muchos casos, por ejemplo, al querer validar los datos del formulario del lado del cliente antes de enviarlo a través de un evento de envío de formulario.
Uso
Para establecer el código del evento, utiliza el método setCode().
Filtrando eventos
ElementEventOptions incluye una característica para establecer una expresión de filtro que se evaluará en el cliente antes de que se dispare el evento. Esta expresión de filtro permite al cliente determinar si el evento debe continuar o detenerse en función de ciertas condiciones. Considera un campo de entrada donde quieres activar un evento solo si el texto ingresado cumple con criterios específicos, como una longitud mínima.
Uso
Para establecer el filtro del evento, utiliza el método setFilter().
Debouncing y throttling
Propósito
ElementEventOptions proporciona mecanismos para debouncing y throttling de eventos. Estas características son útiles para controlar la frecuencia de los oyentes de eventos, asegurando que se activen solo bajo ciertas condiciones.
Uso
- Para establecer debounce, usa el método
setDebounce. - Para establecer throttle, usa el método
setThrottle.
Ejemplo
En escenarios donde deseas manejar entradas de usuario rápidas, como campos de entrada de búsqueda, puedes usar debounce para retrasar la ejecución hasta que el usuario haya terminado de escribir.
Combinando opciones de evento
La clase ElementEventOptions admite la combinación con otras instancias, permitiendo a los desarrolladores agregar varias opciones. Esta característica es útil al combinar configuraciones de diferentes fuentes.
Anotaciones
Propósito
Para comodidad, ElementEventOptions se puede configurar utilizando anotaciones. Estas anotaciones proporcionan una forma más concisa y expresiva de establecer opciones de evento.
Ejemplo
Considera la siguiente anotación de ejemplo:
@EventOptions(data = {@EventData(key = "value", exp = "component.value")},
debounce = @DebounceSettings(value = 200))