#13 Lo que le veo de 'problemático' es que, tal y como lo estás indicando, tendrías un solo Observable para todos los casos y, dentro del subscribe, el switch para identificar la acción en concreto que lo ha activado.
Asi a bote pronto, lo que se me ocurre:
A la larga, si hay muchas condiciones, el código no será muy mantenible (sobre todo si repites cases en distintos componentes)
Si escuchas el mismo observable en muchos sitios/componentes ( yo que se, digamos 10 componentes ), los 10 se van a ejecutar cuando se lance next
, cuando lo ideal sería que solo se activaran aquellos que le correspondan a lo que estás ejecutando.
Dentro de lo poco que he tocado de los Observables y del desconocimiento que tengo de ellos, creo que yo crearía un observable por cada case
del switch
(o algo así, no se q opciones puedes tener) y, cada componente solo se subscribiría a lo que les interesa.
Creo que desde esta perspectiva es algo más de trabajo en código y estructuración pero mejor a largo plazo.
De todas formas, sin conocer exactamente el uso final, cuantas veces lo usas, como lo usas, etc.. es decir, cosas que solo sabes tu, tampoco podemos sacarle muchos inconvenientes xD
## Servicio con observables
ejemploUsoPayloadObservable: Observable;
ejemploLogPayloadObservable: Observable;
## Componente 1
ejemploUsoPayloadObservable.subscribe( data => { Uso Payload; } );
## Componente 2
ejemploLogPayloadObservable.subscribe( data => { Log Payload; } );