javascript - RXJS Angular - Como chamar uma função no final de um loop foreach que contém observáveis?

this.attachmentList.forEach((attachment, i) => { this.service.getPageOfAttachment().flatMap(response => this.service.download((JSON.parse(response['Content']).mediaUrl))) .subscribe(response => { }, error =&g

Ler mais →

javascript - Como emitir seletivamente observáveis quentes (partilhados) em RxJS?

No meu código, tenho um observable quente (observable frio encadeado através do operador share()) a emitir valores com identificadores (ou seja, o tipo de payload contém uma propriedade string "id"). Vários observadores sobre isto filtram então os valores emitidos com base nesse id.

Agora penso que o meu código está a sofrer uma grande perda de desempenho, já que cada observador tem de filtrar cada valor que é emitido. Ou melhor, um novo observável filtrado é criado cada vez que preciso

Ler mais →

typescript - Angular 6 - propriedade rxjs 'map' não existe no tipo 'observable'

Estou a receber este erro quando atualizei para o Angular 6. Vejo a documentação para usar .pipe(), mas não estou a perceber como usar pipe quando há múltiplos .map() como abaixo. Preciso da tua ajuda...

import {Injectable} from '@angular/core'; import {Http, Headers} f

Ler mais →

typescript - RxJS fromEventPattern com eventos do React Native

Estou a tentar filtrar eventos nativos no React Native com RxJS. Estou a usar o react-native-ble-manager, que expõe um EventEmitter. Basicamente, sem RxJS, estou a fazer o seguinte (apenas o código relevante é mostrado aqui):

import React from 'react'; import RX from 'reactxp'; import { AppState, Platform, NativeModules, NativeEventEmitter, EmitterSubscription, PermissionsAndroid, ListView } from 'react-native'; import BleManager, { Peripheral } from 'react-nati

Ler mais →

javascript - Existe uma maneira de voltar a subscrever após cancelar a subscrição no RxJS?

Aqui está um código de exemplo que subscreve a uma requisição Http e cancela-a ao clicar com o rato na página. Gostaria de resubcrever se eu clicar novamente.

Como posso alternar a subscrição? FIDDLE

export class AboutComponent implements OnInit { constructor(private http:HttpClient

Ler mais →

angular - RxJS/Observable: Como definir a ordem dos métodos pipe

Tenho um método run na classe Some que retorna um Observable e tem um pipe dentro deste método. E tenho mais um pipe quando executo o método run.

import { of } from 'rxjs'; import { map, tap, delay } from 'rxjs/operators'; class

Ler mais →

javascript - Procurando algo como OrElse na função find do RxJS do Angular enquanto se utiliza pipe

Tenho o seguinte pedaço de código. O que estou a tentar fazer é redirecionar para a página de não encontrado quando a função "find" não encontrar nenhum objeto de pedido nas encomendas carregadas observáveis.

private order: Observable<OrderMode

Ler mais →

angular - Como usar o operador "find" do rxjs

Quero definir nameMatch para o nodeName se o nodeName estiver presente no fluxo observável. O mesmo com idMatch. Estou a tentar usar o operador find do rxjs. Isto é o que tenho atualmente:

const response = (this._resourceService.search(ResourceUrns.SERVICE_METRIC) .pipe( map(getServiceNodes)) .subscribe(result => { if (result.find(nodeName)){

Ler mais →

angular - Rxjs timeout() está a gerar erro para algumas datas futuras

O timeout() do Rxjs não está a funcionar corretamente para alguns Dias ou Timestamp

import { interval } from 'rxjs'; import { timeout } from 'rxjs/operators'; const seconds = interval(1000); seconds.pipe( // Present Date (Thu Mar 19 2020 14:40:58) => 1584628858530 // to UTC time & date: (Wed Dec 30 2020 18:30:00) => 1609353000000-------Not working // to UTC time & date: (Mon Dec 30 2030 18:30:00) => 1924885800000-------W

Ler mais →

typescript - RxJS - Converter cadeia de promessas para observable não está a funcionar

Estou a tentar converter encadeamento de promessas:

this.tradeTypesLogicService.getList().$promise .then(this.filterTradeTypes) .then(this.setSelectedTradeType)

para um observable do rxjs:

this.tradeTypesLogicService .getList() //returns observable now .pipe(mergeMap(this.filterTradeTypes), map(this.setSelectedTradeType)) .subscribe(); protected filterTradeTypes = (tradeTypes: Array<any>) => { this.tradeTypes = fi

Ler mais →