RxJX Empty

Empty observable example using ES6.

by Lou Mauget

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/4.1.0/rx.lite.js"></script>

CSS

body {
  font-family: "Arial", "sans-serif";
}

JavaScript

var
  delay = 3, // seconds
  source = Rx.Observable.empty(), // Dormant until subscription occurs
  msg1 = `Will subscribe to empty source in ${delay} seconds ...<br/>`; 

$('body').append(msg1);  // HTML output
console.log(msg1);       // deb log ouput  -

window.setTimeout( function() {
  var msg2 = `Subscribing ... here comes the data ...`;
  $('body').append(`<br/>${msg2}`);
  console.log(msg2);

  // Kick the stream
  source.subscribe(
    function( v ) { console.log(`onNext: ${v}`)},  // arg1 fn
    function( v ) { console.log(`onError: ${v}`)}, // arg2 fn
    function( v ) {                           // arg3 fn
      var msg3 = `yes ... received the expected "${v}" from the stream.`;
      $('body').append(`<br/>${msg3}`);
      console.log(msg3);
    }
  );
}, delay * 1000 );