Recepción de notificaciones realizadas de observables construidos utilizando el interruptor

En el siguiente ejemplo,foo recibe datos debar pero ignora cuandobar completa.foo se completa cuandobaz completa, que no es el comportamiento que deseo.

var baz = Rx.Observable.interval( 50 ).take( 10 );

var foo = baz
    .select(function (x) { 
        var bar = Rx.Observable.range(x, 3);
        return bar;
    })
    .switch();

¿Hay una variante deswitch o una técnica que podría usar para tener el recién creadofoo observable tiene la misma vida útil quebar? Es decir, me gustaríafoo completar en caso de quebar completa.

Solución:

var baz = Rx.Observable.interval( 50 ).take( 10 );

var foo = baz
    .select(function (x) { 
        var bar = Rx.Observable.range(x, 3).materialize()
        return bar;
    })
    .switch()
    .dematerialize();

Respuestas a la pregunta(1)

Su respuesta a la pregunta