RxJS - Operador de multicast publishBehavior

publishBehaviour usa BehaviourSubject e retorna ConnectableObservable. O método connect () deve ser usado para assinar o observável criado.

Sintaxe

publishBehaviour(defaultvalue)

Exemplo

import { interval} from 'rxjs';
import { take, publishBehavior} from 'rxjs/operators';

let observer = interval(1000).pipe(
   take(5),
   publishBehavior(4)
);
const subscribe_one = observer.subscribe(
   x => console.log("Value from Sub1 = "+x)
);
const subscribe_two = observer.subscribe(
   x => console.log("Value from Sub2 = "+x)
);
observer.connect();
console.log("After 2 seconds");
setTimeout(() => {
   const subscribe_three = observer.subscribe(
      x => console.log("Value from Sub3 = "+x)
   );
}, 2000);

Resultado

O valor padrão será exibido primeiro e depois o valor do observável.