Cómo cometer errores tipográficos en rxjavaCada implementación del lenguaje de programación de ReactiveX implementa un conjunto de operadores. Existe mucha superposición entre diferentes implementaciones y algunos operadores solo existen en implementaciones específicas. Cada implementación tiende a nombrar estos operadores de manera similar al contexto familiar de ese lenguaje de programación. Este artículo comienza enumerando los operadores principales de ReactiveX con enlaces a la documentación correspondiente y luego proporciona un árbol de decisiones para ayudarlo a elegir el operador adecuado en su situación específica. Finalmente hay una lista alfabética de implementaciones de los operadores específicas del idioma. Si desea implementar sus propios operadores, consulte aquí: Implementación de operadores personalizados Operadores para crear observaciones Creación: una observación se crea desde cero llamando al método del observador. Aplazar: la observación no se crea hasta que el observador haya suscrito el resultado. Observable: crea un nuevo objeto de observación para cada observador antes de que el observador se suscriba. Vacío/Nunca/Tirar: crea un objeto de observación especial con comportamiento restringido. Desde: convierte otro objeto o estructura de datos en un objeto de observación. Intervalo: crea un objeto de observación que emite una secuencia. de números enteros a intervalos regulares Just: convierte un objeto o una colección de objetos en observaciones y las emite. Rango: crea un objeto de observación que emite una secuencia de números enteros dentro de un rango específico. Repetición observable: crea un Observable que activa un dato específico o una secuencia de datos repetidamente. Inicio: crea un Observable que activa el valor de retorno de una función. Temporizador: crea un Observable que activa un solo dato después de un retraso específico. Operaciones de transformación en datos individuales. Estos operadores están disponibles Para obtener instrucciones detalladas sobre cómo convertir los datos emitidos por un Observable, consulte la documentación de cada operador. Buffer: un caché que puede entenderse simplemente como la recopilación periódica de datos del objeto de observación y su empaquetado en una colección. en un solo dato. Emisión empaquetada, en lugar de emitir un FlatMap a la vez: mapeo plano, los datos emitidos por Observable se convertirán en una colección de Observables, y luego los datos emitidos por estos Observables se aplanarán en un solo Observable, que puede entenderse como la estructura de datos anidada es Esto puede entenderse como el proceso de desplegar estructuras de datos anidadas. GroupBy: agrupar, dividir el Observable original en un conjunto de Observables, agrupar los datos emitidos por el Observable original por clave, cada Observable emite un conjunto diferente de datos. Map: Mapear, aplicando una función a cada elemento de la secuencia para convertir un Observable. Mapa - Mapa, que transforma los datos emitidos por las observaciones aplicando una función a cada elemento de la secuencia, esencialmente ejecutando una función en cada elemento de la secuencia, siendo el parámetro ese elemento de datos Escanear - Escanear, par Aplicar una función a cada uno elemento emitido por una observación, y luego emite esos valores en secuencia Ventana - Ventana, divide periódicamente los datos de la observación en varias ventanas de observación y luego activa estas ventanas, en lugar de activar un elemento a la vez.
Similar a Buffer, pero Buffer emite datos, mientras que Window emite observaciones. Cada observación emite un subconjunto de los datos de observación originales. Estos operadores se utilizan para seleccionar y eliminar los datos emitidos por las observaciones. ha estado inactivo durante un período de tiempo. En términos sencillos, esto significa que si no se realiza ninguna operación durante un período de tiempo, se realizará la operación Distinct - Deduplicación, filtrar elementos de datos duplicados - Obtener valor, obtener específico. Elementos de datos posicionales Filtrar: filtrar, filtrar los elementos de datos que no pasan la prueba de predicado. Primero: el primer elemento, solo activa el primer elemento de datos que cumple la condición. IgnoreElements: ignora todos los datos, solo conserva la notificación de terminación (onError o onCompleted) Último - el último elemento, solo activa los últimos datos Muestra: muestra, activa los datos más recientes periódicamente, equivalente al muestreo de datos, algunas implementaciones lo llaman ThrottleFirst Skip: omite los primeros elementos de datos SkipLast: omite el siguiente elemento Take: solo conserva el primer elemento TakeLast: conserva solo el último elemento Operación de combinación El operador de combinación se utiliza para combinar múltiples observaciones en una sola observación. Observable Y/Entonces/Cuando - Combina los conjuntos de datos emitidos por dos o más observaciones a través de patrones (Y condiciones) y horarios (Luego ordenar) CombineLatest - Cuando cualquiera de las dos observaciones emite datos, a través de Patrones (Y condiciones) y horarios (Luego orden) combina los conjuntos de datos emitidos por dos o más observaciones, fusionando los últimos datos emitidos por cada objeto de observación (uno**** dos datos) a través de una función específica, luego emite el resultado de la función Unir, siempre que sea uno. El objeto de observación emite un elemento de datos, siempre que esté dentro del tiempo de ventana definido por el elemento de datos emitido por el otro objeto de observación. Fusionar: combina los datos emitidos por los dos objetos de observación en un solo objeto de observación. secuencia antes de emitir la secuencia de datos o elementos de datos del objeto de observación original Cambiar: convierte el objeto de observación que emite la secuencia de objetos de observación en un objeto de observación que emite los últimos datos emitidos por estos objetos de observación uno por uno Zip: usa la función especificada Empaque los datos emitidos por múltiples objetos de observación en un solo objeto de observación. Zip: empaquete, combine los datos activados por múltiples objetos de observación usando una función específica y luego use el resultado de esa función como un único elemento de datos para activar el manejo de errores. Estos operadores se usan para recuperarse de notificaciones de error Capturar: capturar, continuar. operación de secuencia, con datos normales Reemplace el error y reanude desde la notificación onError Reintentar: reintente, si la secuencia del objeto de vigilancia aún no se ha completado, cuando el objeto de vigilancia active los datos más recientes. Reintentar: si el objeto observado activa una notificación de error, vuelva a suscribirse a la notificación y espere que finalice correctamente. Operaciones auxiliares: un conjunto de operadores utilizados para procesar objetos de observación. Retraso: retrasa la activación de los datos de resultados durante un período de tiempo. Do: registra una operación para ocupar ciertos eventos en el ciclo de vida del objeto de observación, lo que equivale a simular una operación. Materialize/Dematerialize: emite datos emitidos y notificaciones como datos al mismo tiempo. ObserveOn: especifica el observador para observar el programador (subproceso de trabajo) del Observable. Serialize: obliga al Observable a emitir datos en orden y la función es válida. Suscribir: se ejecuta después de recibir los datos y las notificaciones emitidas por el Observable. Operación Suscríbete: especifica en qué programador se encuentra el observador.