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

172
Vistas
Tengo varias declaraciones de devolución que requieren un retraso de RJXS. ¿Hay alguna manera de convertir el operador en una constante?

Por ejemplo, tengo el siguiente pseudocódigo:

 public action1(): return stuff.pipe(delay(15000)); public action2(): return stuff.pipe(delay(15000)); public action3(): return stuff.pipe(delay(15000));

El retraso es idéntico para cada devolución y no cambiará. Pero en lugar de tenerlo como un valor estático, me gustaría convertirlo en una constante a la que se pueda hacer referencia y modificar fácilmente si es necesario. Algo como el siguiente pseudocódigo:

 Const delay = pipe(delay(15000)) public action1(): return stuff.delay; public action2(): return stuff.delay; public action3(): return stuff.delay;

Intenté hacer referencia directamente al retraso usando const pero obtengo errores al intentar esto. Estoy usando el operador de retardo RJXS. La pregunta principal es: ¿hay alguna manera de convertir este operador en una constante que pueda usarse en múltiples áreas?

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

0

Puede definir una función genérica que aceptará el observador y vinculará el retraso con él y devolverá.

Puedes hacer algo como abajo

 const getAfterDelay = (observer) => observer.pipe(delay(15000)); public action1(): return getAfterDelay(stuff); public action2(): return getAfterDelay(stuff); public action3(): return getAfterDelay(stuff);
about 4 years ago · Juan Pablo Isaza Denunciar

0

Crear un método de extensión

 declare module 'rxjs/internal/Observable' { interface Observable<T> { delay(): Observable<T>; } } Observable.prototype.delay = function(): Observable<any> { return this.pipe(delay(15000)); };

Esto permite la sintaxis que está buscando: stuff.delay(); .


Método de extensión de retraso observable en mecanografiado para el ejemplo de StackBlitz.

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