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

208
Vistas
Esperando a que termine un observable

Tengo un método que necesita esperar a que termine un observable. Sé que los observables son excelentes para devolver datos individuales a lo largo del tiempo, pero necesito saber cuándo este observable ha terminado por completo de devolver todos sus datos para poder ejecutar el código de validación en el objeto que ha devuelto.

El método getCustom se suscribe a una ejecución observable en la URL proporcionada que luego devuelve el observable.

No estoy muy seguro de si esta es la mejor manera de abordar esta situación, por lo que agradecería si alguien pudiera darme algún consejo o una dirección para manejar esto.

 private validateQuoteRetrievalAnswers(reference: string) { // Get the risk from the server this.riskManager.getRiskFromServer(reference); if (this.riskManager.risk) { // Validate risk that was returned } }
 getRiskFromServer(quoteReference: string) { this.riskService.getCustom("Url").subscribe => { // need to know when the observable has returned the risk }); }
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

cómo abordaría este desafío:

Consulte su back-end y cuando tengamos lo que necesitamos, envíelo a un Asunto

 riskSubject = new Subject<Risk>(); getRiskFromServer(quoteReference: string) { this.riskService.getCustom("Url") .subscribe( data => { this.riskSubject.next(data); }, error => { console.log(error) } }); }

y luego suscríbase al asunto y espere hasta que obtenga lo que necesita y comience a validar

 private validateQuoteRetrievalAnswers(reference: string) { // Get the risk from the server this.riskManager.getRiskFromServer(reference); // subscribe to subject this.riskManager.riskSubject.subscribe( data => { //do your validation }) }

El corazón de un servicio de datos observables es el sujeto RxJs. Los sujetos implementan las interfaces Observer y Observable, lo que significa que podemos usarlos tanto para emitir valores como para registrar suscriptores.

El sujeto no es más que un bus de eventos tradicional, pero mucho más potente ya que proporciona a todos los operadores funcionales de RxJs. Pero en el fondo, simplemente lo usamos para suscribirnos como un observable normal.

fuente: angular-university.io

O puede usar Observable.fromPromise(promise) pero esto hará que las cosas sean un poco más complicadas de entender si es nuevo en ng2

over 4 years ago · Santiago Trujillo 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