create - 2

RxJS 5 create

HTML

<script src="https://npmcdn.com/@reactivex/[email protected]/dist/global/Rx.umd.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/6.2.0/rxjs.umd.js"></script>

JavaScript

const myObserver = (name) => {
  return {
    next: x => {
      console.log(`Next: ${name} ${x}`)
    },
    error: err => {
      console.log(`Error: ${err}`)
    },
    complete: () => {
      console.log('Completed')
    }
  }
}

const source$ = Rx.Observable.interval(1000)
									.take(6)
const published$ = source$.publishLast()

// Observer subscription
published$.subscribe(myObserver('SubA'))
setTimeout(() => {
  published$.subscribe(myObserver('ObsB'));
}, 4000)

// activate Hot stream
published$.connect()